【发布时间】:2012-12-01 04:32:19
【问题描述】:
我有 2 个环境,本地环境和实时环境
在本地我正在运行: 阿帕奇 php 5.2.9
在现场我正在跑步: nginx (fpm) php 5.3.5
我试过设置:
error_reporting(E_ALL);
ini_set('display_errors',1);
这允许两台服务器上的所有错误,但在我的实时服务器上我没有看到一些错误,例如:
require('test.php); //missing single quote
给我一个空白屏幕,但在我的本地它给了我一个通知和致命错误(因为需要)
如果我尝试要求一个不存在的文件,我在两种环境中都会遇到致命错误。
我有权更改配置和错误报告,并且 display_errors 设置正确。
有什么想法吗?
【问题讨论】:
-
仅供参考,在 PHP 中设置错误报告将不起作用,因为在执行该代码之前会引发解析错误。您需要更改 php.ini、.htaccess 或 user.ini...
-
我认为这里真正的关键点是您应该有大部分解析器类型错误,例如在您推送到实时站点之前解决的关键缺失引用。或者甚至设置一个临时站点,所以它进入开发 -> 阶段 -> 生产,这将大大减少生产/实时版本的这些类型的严重错误,因为它已经在开发盒和临时盒上进行了测试。
-
出于说明目的,我的措辞不正确,实际上是我的开发服务器没有显示解析错误