8

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

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

我通过谷歌搜索,我找不到任何类似的问题。每个人都只是说要完全按照我所做的那样做,但它不起作用。如果我故意放置错误,这些页面将保持空白(没有报告)。

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

4

6 回答 6

31

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

我遇到了同样的问题,发现我正在更改错误的 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 = Offdisplay_errors = On

于 2013-03-13T15:30:34.180 回答
5

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

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

error_reporting = E_ALL


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

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

当您无权访问 php.ini 和/或只想快速测试而无需重新启动网络服务器时,这很有用。


作为旁注,在显示错误时,Xdebug扩展非常棒:当它安装/启用/配置时,您将获得完整的堆栈跟踪,而不是仅仅显示错误消息,这更有用; -)

于 2010-02-19T17:09:27.903 回答
1

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

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

于 2012-05-20T10:19:03.790 回答
0

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

php_value display_errors 0

并将值更改为 1。

于 2010-02-19T21:02:59.653 回答
0

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

error_reporting(E_ALL);
ini_set('display_errors', 'On'); // or ini_set('display_errors', 1);
于 2014-01-29T12:46:29.493 回答
0

这是同一个答案的一个转折点。我遇到了同样的问题,只是从php信息页面复制并粘贴了ini路径,仍然是同样的问题......

结果发现,当我在 php.ini 中编辑我的“error_reporting”块时,我犯了一个语法错误。

我有 E_NOTICE 而不是 ~E_NOTICE。

:(

因此,如果您正在编辑 php.ini 并且完全忘记了您编辑的内容,那么错误可能会发生在 php.ini 中。

于 2015-10-08T02:21:46.103 回答