如何在 Laravel 4 中配置自定义 403 视图
How to configure custom 403 view in Laravel 4
目前我在 start/global.php 上设置了错误页面,这是在 Laravel 文档中推荐的。
代码如下:
App::error(function(Exception $exception, $code)
{
if ( ! Config::get('app.debug'))
{
$view = (View::exists("error/{$code}")) ? "error/{$code}" : "error/404";
return Response::view($view);
}
}
我的观点在哪里
app/views/error/*
我已成功测试 503、500 和 400,但错误页面 403 显示默认的 apaches 默认值,如图所示:
不确定为什么会这样
可能我测试 403 页面的方式不对...
我知道如果 运行 App::abort(403) 我可以测试页面 403,但我正在寻找一种方法来验证它在真实案例中的工作情况。
也许我的 Apache 配置因 Laravel 自定义错误页面而崩溃?
提前致谢,
授予对 img 文件夹的权限 chmod -R 0765 img
ErrorDocument doesn't allow targeting outside DocumentRoot
so your only option is to use an Alias。
将以下行添加到 public
文件夹内的 .htaccess
。
ErrorDocument 403 /errors/403.blade.php
以及您的 VirtualHost
定义的以下行(Alias
在 .htaccess
中是不允许的)
Alias /errors/ /path/to/resources/views/errors/
目前我在 start/global.php 上设置了错误页面,这是在 Laravel 文档中推荐的。
代码如下:
App::error(function(Exception $exception, $code)
{
if ( ! Config::get('app.debug'))
{
$view = (View::exists("error/{$code}")) ? "error/{$code}" : "error/404";
return Response::view($view);
}
}
我的观点在哪里
app/views/error/*
我已成功测试 503、500 和 400,但错误页面 403 显示默认的 apaches 默认值,如图所示:
不确定为什么会这样
可能我测试 403 页面的方式不对... 我知道如果 运行 App::abort(403) 我可以测试页面 403,但我正在寻找一种方法来验证它在真实案例中的工作情况。
也许我的 Apache 配置因 Laravel 自定义错误页面而崩溃?
提前致谢,
授予对 img 文件夹的权限 chmod -R 0765 img
ErrorDocument doesn't allow targeting outside DocumentRoot
so your only option is to use an Alias。
将以下行添加到 public
文件夹内的 .htaccess
。
ErrorDocument 403 /errors/403.blade.php
以及您的 VirtualHost
定义的以下行(Alias
在 .htaccess
中是不允许的)
Alias /errors/ /path/to/resources/views/errors/