Yii没有显示任何错误

时间:2014-11-03 21:11:31

标签: php yii error-handling

无法让Yii向webbrowser显示错误。 config 中配置的自定义错误处理程序:

'errorHandler' => array(
            // use 'site/error' action to display errors
            'errorAction' => 'site/error',
        ),

但所有错误只写入 application.log ,然后Apache服务器空白页面错误500 。如何在屏幕上显示Yii打印错误?

的index.php

// remove the following lines when in production mode
defined('YII_DEBUG') or define('YII_DEBUG', true);
// specify how many levels of call stack should be shown in each log message
defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',3);

4 个答案:

答案 0 :(得分:5)

您应该稍微修改一下config/main.php。有一个项errorHandler。它应该是这样的:

'errorHandler' => [
    // use 'site/error' action to display errors
    'errorAction' => YII_DEBUG ? null : 'site/error',
],

这是因为CErrorHandler::$errorAction的优先级提高了。以下是讨论:https://github.com/yiisoft/yii/issues/3760

答案 1 :(得分:3)

它可能更像是一个Apache设置。你有什么是正确的。

我也有这个。

定义('YII_DEBUG_SHOW_PROFILER')或定义('YII_DEBUG_SHOW_PROFILER',真);

您也可以这样做。

error_reporting(E_ALL);
ini_set("display_startup_errors","1");
ini_set("display_errors","1");

答案 2 :(得分:0)

读取runtime / logs / app.log 您可以看到yii2应用中发生的任何操作和错误。

答案 3 :(得分:-2)

在index.php中将YII_DEBUG设置为true,您应该会看到错误信息。不要忘记在生产过程中改变它。

(这个问题将被标记为已经问过哈哈)