如何显示404页面?

时间:2015-06-02 08:28:35

标签: php exception laravel-5

我想在Laravel 5中显示404页面而MethodNotAllowedHttpException会抛出。

在这方面,有人可以帮助我吗?

4 个答案:

答案 0 :(得分:9)

将此添加到app/Exceptions/Handler.php

public function render($request, Exception $e) 
{
    if ($e instanceof MethodNotAllowedHttpException) 
    {
        abort(404);
    }
    return parent::render($request, $e);
}

然后修改resource/views/errors/404.blade.php以个性化页面。

答案 1 :(得分:3)

简单:您只需在 resources / views / errors / 404.blade.php 创建模板。

如果您有这种倾向,可以为其他HTTP状态代码创建视图,例如 403.blade.php 用于禁止例外等等。

答案 2 :(得分:1)

我正在使用Laravel 5.2并且给出了here给出的答案。

您需要在app / Exceptions / Handler.php。

中修改render方法
    public function render($request, Exception $e)
    {
        if ($e instanceof \Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException) 
        {
            return response(view('errors.404'), 404);
        }

        return parent::render($request, $e);
    }

abort(404)对我不起作用。看起来在Laravel 5中删除了此方法。

答案 3 :(得分:0)

这是一个405错误,最简单的方法是在resources/views/errors/405.blade.php.中创建一个新视图。

如果您需要对显示的内容进行精确控制,那么您将必须使用Handler.php来修改返回的内容。