Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 扫描权限不正确的文件或文件夹_Php_File_Joomla_Permissions_Directory - Fatal编程技术网

Php 扫描权限不正确的文件或文件夹

Php 扫描权限不正确的文件或文件夹,php,file,joomla,permissions,directory,Php,File,Joomla,Permissions,Directory,我只想看看文件夹755和644所在的文件和文件夹列表 是否有脚本可以递归扫描web服务器上的所有文件/文件夹以获取此信息 我的网站被黑了,一堆文件被设置为200个权限,这是一个Joomla 1.5网站,这么多的文件/文件夹,需要永远手动完成 主机位于1和1,是linux共享服务器 我正在寻找一个PHP脚本 解决方案(感谢Robert提供的信息) 由于某些原因,windows和linux上的文件夹返回55 我从中获得了烫发功能 您可以将php与函数和 要检查文件权限,可以使用fileperms(

我只想看看文件夹755和644所在的文件和文件夹列表

是否有脚本可以递归扫描web服务器上的所有文件/文件夹以获取此信息

我的网站被黑了,一堆文件被设置为200个权限,这是一个Joomla 1.5网站,这么多的文件/文件夹,需要永远手动完成

主机位于1和1,是linux共享服务器

我正在寻找一个PHP脚本

解决方案(感谢Robert提供的信息) 由于某些原因,windows和linux上的文件夹返回55 我从中获得了烫发功能


您可以将php与函数和

要检查文件权限,可以使用
fileperms()
函数。它以数字模式返回文件的权限。您可以使用+进行检查,也可以使用
chmod()
设置权限。使用目录迭代器也可以使用方法

示例:

$path = realpath('/path/to/dic');

$files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path),RecursiveIteratorIterator::SELF_FIRST);

foreach($files as $name => $f){
    if($f->getPerms() != 775 && $f->isFile()) {
        chmod($fileinfo->getPathname(), 0775);
        echo getPathname();
    }
}
这将为具有不同权限的文件将chmod设置为775。您还可以使用3种方法来检查读/写/执行置换:

  • DirectoryIterator::isExecutable()-确定当前DirectoryIterator项是否可执行
  • DirectoryIterator::isReadable()-确定是否可以读取当前DirectoryIterator项
  • DirectoryIterator::isWritable()-确定当前DirectoryIterator项是否可以写入

您应该升级到最近的Joomla!请尽快发布版本。否则,您将在未来面临越来越多的成功攻击,因为Joomla!1.5在很久以前已经达到EOL(寿命终止)


一般来说,使用像这样的工具是一个好主意,它可以完全满足您的要求,以及许多其他有用的东西来强化您的工作!安装。

unix命令CHMOD-Ryo无法更改进程没有写入权限的内容。您是否正在寻找unix命令或php脚本来执行此操作?
tag
it也
Joomla
如果您的服务器被黑客攻击,将其更改回来并不意味着您是自由的。阅读以下链接:“在这种情况下,问题是你不再控制该系统。它不再是你的计算机。确保你控制该系统的唯一方法是重建系统。”我想问题是如何找到这些文件,不是如何更改权限我想在手动更改受影响的文件之前查看这些文件,如果可能的话这似乎是最好的方法,我会尝试一下,tx MAN您可以使用您的目录和特定权限进行更改
$path = realpath('/path/to/dic');

$files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path),RecursiveIteratorIterator::SELF_FIRST);

foreach($files as $name => $f){
    if($f->getPerms() != 775 && $f->isFile()) {
        chmod($fileinfo->getPathname(), 0775);
        echo getPathname();
    }
}
find /home/*/public_html -type d -perm 755