Laravel 如何自定义 404、500 错误页面

发布时间:2019-03-28 编辑:小张个人博客 查看次数:1341

Laravel 错误处理

所有的异常处理都是通过 Laravel/App/Exceptions/Handler 类。这个类包含了两个方法:reportrender

report 方法用来记录异常。默认情况下,当异常被记录时,report 方法只是简单的发送异常到基类。

render 方法负责将指定的异常转换成 HTTP 响应再发送到浏览器。默认情况下,异常会被发送到基类并帮你生成响应。

Laravel 默认错误页面

Laravel默认错误页面

自定义 HTTP 错误页面

编辑 PHP 文件 Laravel/app/Exceptions/Handler.php 内容如下:

public function render($request, Exception $e)
{
   if ($e instanceof ModelNotFoundException) {
       $e = new NotFoundHttpException($e->getMessage(), $e);
   }
   if($e instanceof \Symfony\Component\Debug\Exception\FatalErrorException && !config('app.debug')) { // 加上app.debug防止dubug关闭模式下暴露重要信息
       return response()->view('errors.default', [], 500);
   }
   return parent::render($request, $e);
}

自定义 HTTP 错误页面

你可以简单的对于各种不同的 HTTP 状态码返回自定义的错误视图。例如,如果你想要自定义 HTTP 404 状态码的错误视图,则可以创建一个 resources/views/errors/404.blade.php 文件。应用程序将会使用这个视图处理所有发生的 404 错误。

在这个目录下的视图,命名应该匹配对应到 HTTP 状态码。


出处:小张个人博客

网址:http://blog.023xs.cn/

您的支持是对博主最大的鼓励,感谢您的认真阅读。欢迎转载,但请保留该声明。

顶部

Copyright © 小张个人博客 All Rights Reserved 渝ICP备15006773号-1

联系方式:[email protected] | 本站文章仅供学习和参考

渝公网安备 50024102500267号