Laravel 错误处理:自定义 403 页面
Laravel 可以轻松显示各种 HTTP 状态代码的自定义错误页面。
例如,如果你希望自定义 403 HTTP 状态码的错误页面,可以创建一个 resources/views/errors/403.blade.php
视图文件。该文件将被用于你的应用程序产生的所有 403 错误。由 abort
函数引发的 HttpException
实例将作为 $exception
变量传递给视图:
<h2>{{ $exception->getMessage() }}</h2>
路由代码:
Route::get('/403', function () {
abort(403, '抱歉,你没有权限访问!');
});
浏览器访问:
你还可以使用 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 状态码的模板文件了。
php artisan vendor:publish --tag=laravel-errors,发布成功了,但是为什么没有文件生成呀?