小知识:linux服务器下完美解决无法删除虚拟主机文件或文件夹

FTP工具软件会提示Permission Denied(没有权限),或者 550删除目录操作失败。今天小残在操作FTP的时候就出现了这种问题。

出现的原因一般都是这些目录或文件是PHP程序以管理员用户写入的,而一般虚拟主机的用户名下的用户又没有管理员用户组的权限,因此无法删除。

大家在使用Linux的虚拟主机时候有没有出现过通过FTP无法删除网站路径中的一些文件夹和文件

%小知识:linux服务器下完美解决无法删除虚拟主机文件或文件夹-猿站网-插图

我们可以把下面这个PHP代码放到对应的虚拟主机的空间上运行,按提示输入文件夹或文件名即可。(注意这里最好使用相对路径。)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
<?php
/*
####警告####
本软件为空间维护工具,使用完毕之后请立即删除本文件
www.exehack.net
*/
?>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″>
<title>空间文件夹/文件删除工具</title>
<style>
body {font-family:”宋体”; font-size:12px;}
imput { border:1px #ccc solid;}
b { color:#FF0000;}
</style>
</head>
<body>
<form action=”?action=dirdel” method=”post”>
删除文件夹,<b>请确定填写无误后再进行删除操作!</b><br>
请输入文件夹路径,多个文件夹请使用”;”隔开
<input type=”text” name=”all_folder” size=”50″>
<input type=”submit” value=”删除”>
</form>
<br>
<form action=”?action=filedel” method=”post”>
删除文件,<b>请确定填写无误后再进行删除操作!</b><br>
请输入完整的文件路径,多个文件请使用”;”隔开
<input type=”text” name=”all_files” size=”50″>
<input type=”submit” value=”删除”>
</form>
<br>
<?php
$action = $_GET[action];
//删除目录操作
if($action==dirdel) {
$all_folder = $_POST[all_folder];
if(!empty($all_folder)) {
//根据分号识别多个文件夹
$folders = explode(;,$all_folder);
if(is_array($folders)) {
foreach($folders as $folder) {
deldir($folder);
echo $folder . 删除成功<Br>;
}
}
}
}
if($action==filedel) {
$all_files = $_POST[all_files];
if(!empty($all_files)) {
//根据分号识别多个文件
$files = explode(;,$all_files);
if(is_array($files)) {
foreach($files as $file) {
if(is_file($file)) {
if(unlink($file)) {
echo $file . 删除成功<Br>;
} else {
echo $file . 无法删除,请检查权限<Br>;
}
} else {
echo $file . 不存在<br>;
}
}
}
}
}
//删除目录及所包含文件函数
function deldir($dir) {
//打开文件目录
$dh = opendir($dir);
//循环读取文件
while ($file = readdir($dh)) {
if($file != . && $file != ..) {
$fullpath = $dir . / . $file;
//判断是否为目录
if(!is_dir($fullpath)) {
//如果不是,删除该文件
if(!unlink($fullpath)) {
echo $fullpath . 小残提示:无法删除,可能是没有权限!<br>;
}
} else {
//如果是目录,递归本身删除下级目录
deldir($fullpath);
}
}
}
//关闭目录
closedir($dh);
//删除目录
if(rmdir($dir)) {
return true;
} else {
return false;
}
}
?>
</body>
</html>

为了防止出错大家也可以直接下载文件然后上传到虚拟主机上。

下载地址:本地下载

下载好以后然后将 exehack.php上传到虚拟主机根目录,然后访问该文件。

然后将要删除的文件或者文件夹的路径填写上去

%小知识:linux服务器下完美解决无法删除虚拟主机文件或文件夹-1猿站网-插图

比如删除min文件夹那么如下设置:

%小知识:linux服务器下完美解决无法删除虚拟主机文件或文件夹-2猿站网-插图

然后刷新下虚拟主机即可发现文件已被删除。

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:linux并发连接50万的配置方法

2023-4-21 5:07:30

建站知识

小知识:Mac中使用Nginx实现80端口转发8080端口

2023-4-21 5:16:10

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索