MAMP配置帮助,显示PHP错误

时间:2010-02-19 15:57:57

标签: php apache mamp

我在Snow Leopard上运行最新版本的MAMP。

我的php.ini文件已配置为显示错误。 display_errors = on。 phpinfo();页面显示错误报告的状态,它已打开。我已多次重启我的网络服务器。

我在谷歌搜索过,我找不到任何类似的问题。每个人都说完全按照我所做的去做,但它没有用。如果我故意发生错误,页面将保持空白(没有报告)。

关于问题可能是什么想法?

6 个答案:

答案 0 :(得分:28)

对于遇到此问题的任何未来海报......

我遇到了同样的问题,发现我正在修改错误的php.ini文件。运行phpinfo并找到活动的php.ini文件的路径,以确保您正在编辑正确的文件。

在我安装的mamp上,有多个带有php.ini文件的/ conf目录实例。我需要的php.ini文件位于/ bin / php / php [version#] / conf目录中,而不是MAMP / conf目录。

我需要编辑的php.ini文件的确切路径:

应用程序/ MAMP / bin中/ PHP / php5.4.10 / CONF / php.ini中

display_errors = Off更改为display_errors = On

答案 1 :(得分:5)

除了display_errors指令(必须设置为On)之外,您可能还需要配置error_reporting

例如,您可以在php.ini文件中使用它:

error_reporting = E_ALL


另一个应该对测试有用的可能是将PHP代码的这一部分放在脚本的开头:

error_reporting(E_ALL);
ini_set('display_errors', 'On');

当您无法访问php.ini和/或只是想快速测试时,这非常有用,而无需重新启动Web服务器。


作为旁注,当涉及到显示错误时,Xdebug扩展名非常棒:当它被安装/启用/配置时,而不仅仅是出现错误消息,您将获得完整的stack-trace,这更有用; - )

答案 2 :(得分:1)

我最近遇到了同样的问题 - 在我的情况下,我从他们的实时服务器下载了一个客户端的Wordpress网站,结果被恶意脚本插入篡改了,为了逃避检测而覆盖了错误报告。

帮助OP(!)有点晚,但可能对未来的搜索者有用。

答案 3 :(得分:0)

目录中可能有一个.htaccess文件覆盖了php.ini中设置的display_errors设置。从你的帖子我假设你没有明确添加这个,但一些框架默认执行此操作,因此可能会添加这种方式。在.htaccess文件中查找这样的行:

php_value display_errors 0

并将值更改为1。

答案 4 :(得分:0)

如果你有几个版本的php sdks,首先要确保你正在编辑正确的php.ini文件。如果你是对的,请在代码的开头添加这两行。

error_reporting(E_ALL);
ini_set('display_errors', 'On'); // or ini_set('display_errors', 1);

答案 5 :(得分:0)

这是对同一答案的一种扭曲。我有同样的问题,只是从php信息页面复制并粘贴了ini路径,但仍存在同样的问题...

当我在php.ini中编辑'error_reporting'块时,我犯了一个语法错误。

我有E_NOTICE而不是~E_NOTICE。

:(

如果您编辑它并完全忘记编辑了某些内容,那么php.ini中可能会发生错误。