Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.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 替换目录树中的所有index.html文件_Php_Search_File_Replace - Fatal编程技术网

Php 替换目录树中的所有index.html文件

Php 替换目录树中的所有index.html文件,php,search,file,replace,Php,Search,File,Replace,我与多个网站的共享托管帐户被破坏。我的电脑上的一些恶意软件,我可能是通过下载PDF文件获得的,找到了我所有的FTP密码,并愉快地将一些代码插入到服务器上的所有index.*文件中。我现在已经摆脱了这个恶意软件,我准备在修复损坏后立即更改所有FTP密码 我确实有一些备份,但不是所有的备份,也不是所有最近的备份。因此,我认为恢复一切的最简单、最快捷的方法是修复所有文件夹中的所有index.html文件。然而,由于我使用Joomla,其中每个文件夹都有一个index.html文件来防止目录列表,因此有

我与多个网站的共享托管帐户被破坏。我的电脑上的一些恶意软件,我可能是通过下载PDF文件获得的,找到了我所有的FTP密码,并愉快地将一些代码插入到服务器上的所有index.*文件中。我现在已经摆脱了这个恶意软件,我准备在修复损坏后立即更改所有FTP密码

我确实有一些备份,但不是所有的备份,也不是所有最近的备份。因此,我认为恢复一切的最简单、最快捷的方法是修复所有文件夹中的所有index.html文件。然而,由于我使用Joomla,其中每个文件夹都有一个index.html文件来防止目录列表,因此有数千个这样的文件。所以,我需要使用自动化工具

  • 一个选项是搜索并替换所有index.html文件中插入的字符串,但我认为这不起作用,因为不同文件中的字符串不同
  • 另一种选择是简单地用我知道应该是正确内容的内容替换index.html文件中的所有内容
  • 第三种选择是将所有index.html文件替换为我所知道的正确文件的副本
  • 让我有点惊讶的是,我还没有找到一个脚本可以执行选项2或3。我确实找到了各种各样的程序或脚本来完成部分工作(搜索和替换字符串,递归地遍历目录树等等),但不幸的是,我无法将它们组合到一个工作解决方案中

    最好的解决方案是在服务器上使用php或其他脚本,这样我就不需要下载所有内容,可以使用FTP和cPanel作为我唯一的工具来完成

    根据我的调查,我不是这个恶意软件的唯一受害者。因此,解决方案也将帮助其他Joomla用户。此外,如果一个解决方案能够使用自定义文件名(例如index2.php)将被选定的文件替换为要复制的模板,那么任何使用任何类型的php文件的受害者都会得到解决方案的帮助。显然,预计受害者人数会增加

    有人知道php脚本可以为我提供解决方案吗,或者有人能够创建一个吗

    假设找到了一个解决方案,有没有人有一个博客可以让其他人发布和找到它

    非常感谢


    PS我应该注意到,恶意软件实际上改变了任何名为index的文件,显然也是默认的。但是没有太多扩展名为.php的文件我可以手动执行这些操作。

    我的一个朋友以前也有类似的问题,他编写了一个php脚本。检查它是否对您有帮助。

    这听起来像是一种不寻常的情况,会同时发生,因此我并不惊讶于没有一个现有的解决方案来解决这个问题

    3) 第三种选择是替换 所有index.html文件的副本是什么 我知道这是正确的文件

    我想这可能是你最好的选择。用Python写这篇文章大约需要一个小时。查看和模块,特别是
    os.walk()
    shutil.copyfile()
    。可以找到
    os.walk()
    的一个示例用法,因为当您第一次学习它时,
    os.walk()
    可能会有点混乱


    或者,您可以向Paypal支付50美元,并通过电子邮件向我描述文件结构(您从何处获取备份以及备份将要到何处),我很乐意为您编写脚本。:)

    很高兴看到PayPal的行动在这里进行D@eyze我的目标是取悦!另外,我失业了,我真的需要钱。:)@eyze我不确定这是否属于serverfault,他问的是如何编写自定义脚本来修复损坏,而不是如何保护他的服务器。。。但我明白你为什么给它贴上这样的标签。