【发布时间】:2013-11-24 13:40:31
【问题描述】:
我知道有一个类似的问题:How to display errors on laravel 4?
但我完全不知道如何启用错误显示。我做了什么:
- 在 php.ini 中,我设置了“display_errors = On”、“error_reporting = E_ALL”、“error_log = /var/log/php_errors.log”
- 在 laravel 的配置 (app.php) - 调试模式
- 我查看了 /app/storage/logs(无日志)
- 我查看了 php_errors.log(这里只是一个简单的警告)
- 在虚拟主机配置中,我指定了 error.log 路径,但此处没有信息
我的代码很简单:
public function getTest() {
// phpinfo();
echo $notExistingVar;
die('123');
}
我看不到“123”,而是收到 500 错误(在 Chrome 开发工具中查看)
- 当我更改某些内容时,我多次尝试“service apache2 restart”
- 而且我也试过直接在代码中通过ini_set指定设置
好像我错过了一些简单的东西,但我只看到了 WSOD。每时每刻。 非常感谢任何帮助
更新
至少
ini_set('display_errors', '1');
帮助。不在 php.ini 中,而是在 php 脚本文件本身中
【问题讨论】:
-
错误 500 几乎意味着任何事情。什么时候会弹出这个错误?你最后改变了什么?服务器错误日志告诉你什么?
-
如果您收到 500 错误 - 您需要查看您的 apache 日志或更高版本。删除部分代码,直到您进行基本的 Laravel 安装(或从基本安装开始以确保其正常工作)。
-
错误在我的示例中弹出 $notExistingVar (不存在),我什么也看不到。在实际项目中,我使用了语法错误的 Eloquent 方法。如果我得到正确的apache日志 - 我在虚拟主机中指出的那些? (如 /etc/apache2/sites-available/mysite)。如果属实,则没有任何信息。但我很确定 PHP 应该输出类似“var 不存在”之类的东西,不是吗?
-
没有。 PHP 自动定义变量,所以在你的情况下 var 只是空的,所以输出将为空白。
-
好吧,无论如何,当我尝试回显此变量时,或者例如,当我尝试使用不存在的函数时,我仍然会收到 500 错误