无法让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);
答案 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,您应该会看到错误信息。不要忘记在生产过程中改变它。
(这个问题将被标记为已经问过哈哈)