【发布时间】:2014-09-20 02:22:29
【问题描述】:
几年来我一直在同一个系统上编码,但最近我错过了一个右括号 },而不是描述性错误,浏览器给了我一个“连接重置”错误。
这是在本地主机上(windows vista,PHP 版本 5.2.5,apache2.2)我有 display_errors,开发环境,Php.ini 文件是错误报告E_ALL & E_STRICT & E_NOTICE。自从发生此问题以来,这些都没有改变..
更奇怪的是,我编写了一个简单的 phpinfo() 文件,当我在 Firefox 中点击它时,它会显示,然后在最后连接被重置。使用 chrome,似乎可以工作。
我很困惑,但只是注意到当我显示 phpinfo 页面时,在 php.ini 文件 error_reporting=E_ALL & E_STRICT & E_NOTICE 中 error_reporting 为 0。没有其他东西可以覆盖这一点。
更新:我发现即使是简单的错误(引用不存在的值,打开 E_STRICT)也会导致连接重置问题。
更新 2:我知道大多数人会认为这个问题已经回答了 100 次,这是不同的。
2 个文件:
ini_set('display_errors','On');
ini_set('display_startup_errors','On');
error_reporting(E_ALL|E_STRICT);
include("file2.php");
文件2.php: 有解析错误
if(isset($x){echo "HI";}
在我的开发服务器上 - 连接重置(错误 500) 在我的生产服务器上 - 显示解析错误。
【问题讨论】:
-
您介意显示代码和/或错误日志。
-
你能把来自 apache
error.log文件的日志也包括进来吗? -
错误日志没有显示任何内容,代码在上面。研究如何强制 apache 写入错误日志以确保我正在查看写入错误日志。谢谢达伦
标签: php apache error-reporting