Yii原始的调试模式会看到很多我们代码里的信息
这些信息暴露在外边相当于我们的网站正在裸奔
如何自定义开发信息
1、配置/config/web.php
'errorHandler' => [
// 'errorAction' => 'site/error',
// 'maxSourceLines' => 2 //原报错页面基础上只显示2行错误信息
'class' => 'app\components\ErrorHandler',//我们自定义的报错信息
],
2、自己写ErrorHandler.php文件
新建文件夹components并在该文件夹下新建ErrorHandler.php文件
<?php
namespace app\components;
class ErrorHandler extends \yii\base\ErrorHandler
{
/**
* Renders the exception.
* @param \Exception $exception the exception to be rendered.
*/
protected function renderException($exception)
{
$title = $exception->getMessage();
$message = $exception->getFile().":".$exception->getLine();
$code = $exception->getCode();
$data = [
'title' => $title,
'message' => $message,
'code' => $code
];
if (YII_DEBUG) {//调试模式下显示错误信息
echo '<p style="text-align:center">'.$title.'</p>';//错误原因
echo '<p>'.$message.'</p>';//错误所在地方
echo '<p>'.$code.'</p>';//错误码
}
//生产环境下仅显示一下文字
echo "<h1 style='text-align:center'>服务器出错了😥</h1>";
echo "<h2 style='text-align:center'>稍等一下 程序员正火速赶来~~❤️❤️</h2><br>";
echo "<img src='/img/bug_bug.jpg' style='margin-left:35%;width:30%'>";
if (YII_DEBUG) {//调试模式下显示错误信息
\Yii::$app->end();
}
}
}
来源:oschina
链接:https://my.oschina.net/boringblue/blog/4479532