laravel - Lumen 中的自定义 404 页面

标签 laravel lumen

我是 Lumen 的新手,想用这个框架创建一个应用程序。现在我遇到的问题是,如果某些用户输入了错误的 url => http://www.example.com/abuot (错误)=> http://www.example.com/about (右),我想展示一个自定义的错误页面,最好在中间件级别发生。

此外,我能够检查当前 url 是否有效,但我不确定如何在中间件中“制作” View , response()->view() 将不起作用。

如果有人可以提供帮助,那就太棒了。

最佳答案

看到错误在 App\Exceptions\Handler 中处理,这是对付他们最好的地方。

如果您只是在自定义 404 错误页面之后,那么您可以很容易地做到这一点:

将此行添加到 Handler 的顶部文件:
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
更改 render函数看起来像这样:

public function render($request, Exception $e)
{
    if($e instanceof NotFoundHttpException){
        return response(view("errors.404"), 404);
    }
    return parent::render($request, $e);
}

这假设您的自定义 404 页面存储在 View 中的错误文件夹中,并将返回自定义错误页面以及 404 状态代码。

关于laravel - Lumen 中的自定义 404 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35215716/

相关文章:

Laravel ManyToMany 关系正在反转表名称

php - Laravel - 如何在进度条上设置消息

php - 来自原始查询的 laravel 查询生成器

php - 选择动态端点时 Guzzle 不使用基本 uri(在本地工作,但在 K8S 上不工作)

css - Markdown 邮件按钮 Laravel 无法正常工作

php - 在 Laravel 中使用 redis 作为队列驱动程序的作业失败表

php - laravel 中存在用于电子邮件的 Jquery 验证

php - 如何在 Lumen 中使用助手实现驱动程序模式

markdown - 以纯文本形式获取 Markdown 电子邮件

php - Safari - NSPOSIXErrorDomain :100