如何在 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/