Laravel 错误处理:自定义 500 页面 2 个改进

Laravel 可以轻松显示各种 HTTP 状态代码的自定义错误页面。

例如,如果你希望自定义 500 HTTP 状态码的错误页面,可以创建一个 resources/views/errors/500.blade.php视图文件。该文件将被用于你的应用程序产生的所有 500 错误。由 abort 函数引发的 HttpException 实例将作为 $exception 变量传递给视图:

<h2>{{ $exception->getMessage() }}</h2>

路由代码:

Route::get('/500', function () {
    abort(500, '抱歉,服务器出了小差,请稍候再试!');
});

浏览器访问:

ITDaorejhe.png!large

你还可以使用 vendor:publish Artisan 命令来生成错误模板页面:

php artisan vendor:publish --tag=laravel-errors

看到输出类似下面的信息则表示生成成功:

Copied Directory [/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/views] To [/resources/views/errors]
Publishing complete.

将发现 resources/views/errors 有如下文件:

resources/views/errors
├── 401.blade.php
├── 403.blade.php
├── 404.blade.php
├── 419.blade.php
├── 429.blade.php
├── 500.blade.php
├── 503.blade.php
├── illustrated-layout.blade.php
├── layout.blade.php
└── minimal.blade.php

此时就可以愉快的修改对应 HTTP 状态码的模板文件了。

参考

本文为 Wiki 文章,邀您参与纠错、纰漏和优化
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!