【发布时间】:2012-03-26 12:06:54
【问题描述】:
我继承了一个在 Apache 上运行的大型现有 PHP 应用程序(实际上是网站)。
我的问题是只有代码有点……纠结,我知道有很多错误代码。
我想拥有/构建一个可以调用我网站的所有 URL(或脚本)并检测是否存在异常或错误的工具?
您知道执行此操作的某种线索吗?
【问题讨论】:
我继承了一个在 Apache 上运行的大型现有 PHP 应用程序(实际上是网站)。
我的问题是只有代码有点……纠结,我知道有很多错误代码。
我想拥有/构建一个可以调用我网站的所有 URL(或脚本)并检测是否存在异常或错误的工具?
您知道执行此操作的某种线索吗?
【问题讨论】:
在 php.ini 中开启 error_reporting
将 wget 指向网站并要求递归下载所有内容:
wget -r http://your-url
输出中的 grep PHP 警告、通知和错误。
【讨论】:
仅对于语法,您可以使用以下内容:
looris@Lohoris-WhiteBook:~ $ cat bin/syntax-check
#!/bin/bash
find $@ -name '*.php' -exec php -l {} \;
【讨论】:
如果网站的所有页面都有指向它的内部链接,你可以编写一个浏览整个网站的爬虫,这基本上是一个起点(index.php)的问题,提取它上面的所有链接使用正则表达式或其他东西并点击每个链接并递归执行相同的过程(如遍历树:)。有一些脚本可以生成已经这样做的站点地图。
如果可以从内部链接访问所有页面,并且无论您的应用程序是如何设计的,这都是解决方案。
其他可能的解决方案是:
【讨论】: