提问人:1'' 提问时间:9/3/2013 最后编辑:Community1'' 更新时间:9/14/2017 访问量:2050
无法在 Chrome 的 PHP 中启用错误报告
Can't enable error reporting in PHP within Chrome
问:
我正在Linux虚拟机中运行的LAMP服务器上测试PHP。在这篇文章之后,我在PHP脚本的开头放置了以下内容以启用错误报告:
ini_set('display_errors',1);
ini_set('display_startup_errors',1);
error_reporting(-1);
我还尝试在 php.ini 文件中启用错误报告,如下所述:
display_errors = On
display_startup_errors = On
error_reporting = -1
但是,我仍然在 Chrome 的调试器中收到 500 内部服务器错误,而不是正确的错误消息:
实际的错误消息(如 所示)为:/var/log/apache2/error.log
PHP Parse error: syntax error, unexpected '$userID' (T_VARIABLE) in /path/to/file
如何在 Chrome 中正确启用错误报告?
答:
1赞
Ivan Hušnjak
9/3/2013
#1
这是Apache(服务器)响应,(可能)与php无关。
它只是说明您的服务器配置有问题。检查 and in 文件夹。
这可能是由于 或 中的配置错误(如果有的话)。access.log
error.log
/var/log/apache2/
/etc/apache2/apache2.conf
/var/www/.htaccess
我还会检查 webroot 文件夹中是否存在,以及文件夹和文件是否都是可读的(在 cli 中使用以使所有文件和文件夹都可读)list.php
chmod -R 755 /var/www
评论
0赞
1''
9/3/2013
我在 Google App Engine 上收到了 500 内部服务器错误,即使一切正常。该页面加载正常,直到它必须运行PHP脚本,这表明这不是服务器配置问题。事实上,在查看错误日志后,它确实是PHP语法错误!我现在接受你的答案,但我真的在寻找一种直接在 Chrome 中显示错误的方法。
0赞
EchoTango422
9/14/2017
#2
您应该检查您是在开发环境中,而不是在生产环境中。根据 HOSTS,它可能位于配置文件中。下面是一个示例:
app.engine=php
app.engine.version=5.6
http.firewall=none
environment=development
这样你就可以看到你的错误!然后,完成后,您可以放置 environment=production,如果错误仍然存在,用户将看到错误 500。
下一个:PHP 错误抑制被忽略
评论
<? phpinfo(); ?>