主页 > 知识库 > laravel 框架配置404等异常页面

laravel 框架配置404等异常页面

热门标签:银行业务 科大讯飞语音识别系统 服务器配置 团购网站 Mysql连接数设置 电子围栏 Linux服务器 阿里云

在Laravel中所有的异常都由Handler类处理,该类包含两个方法:report和render,其中render方法将异常渲染到http响应中。laravel的Handler类文件位置:app/Exceptions/Handler,由于render方法时间异常渲染到http响应中,所以我们只需要修改下render方法即可

网上很多的方法是将render方法修改成:

public function render($request, Exception $exception)
{
  if ($exception) {
    return response()->view('error.'.$exception->getStatusCode(), [],$exception->getStatusCode());
  }
  return parent::render($request, $exception);
}

这时候你的测试可能是没有问题的,但是如果你如果写了登录的方法的话,这时候如果你访问必须要登录的页面的时候,这时候会报错

这是由于如果你访问了必须要登录的页面的时候,这时候就会进入app/Exceptions/Handler.php的render方法,这时候$exception->getStatusCode()是不存在的,这时候就会报错了,那么如何解决呢?

这时候我们找到parent::render的方法所在:

这时候我们发现原来laravel框架已经将我们的这种情况包含进去了,那么我们就可以即将上面的方法改为:

public function render($request, Exception $exception)
{
  if (!($exception instanceof AuthenticationException)) {
    return response()->view('error.'.$exception->getStatusCode(), [],$exception->getStatusCode());
  }
  return parent::render($request, $exception);
}

这时候就完美解决了这个问题

然后在resources/view/error/下面新建错误页面,错误页面的命名为:{errorcode}..balde.php,其中的errorcode为错误码,例如404..balde.php

配置完成后访问一个不存在的路由时即可跳转到你配置的404页面

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
  • Laravel如何友好的修改.env配置文件详解
  • Nginx中运行PHP框架Laravel的配置文件分享
  • Laravel框架环境与配置操作实例分析
  • Laravel 前端资源配置教程
  • laravel config文件配置全局变量的例子
  • Laravel数据库读写分离配置的方法
  • Laravel 数据库加密及数据库表前缀配置方法
  • laravel框架数据库配置及操作数据库示例
  • laravel-admin自动生成模块,及相关基础配置方法
  • laravel 配置路由 api和web定义的路由的区别详解
  • Laravel5.6框架使用CKEditor5相关配置详解
  • Laravel配置全局公共函数的方法步骤
  • Laravel5框架自定义错误页面配置操作示例
  • laravel配置Redis多个库的实现方法
  • nginx实现一个域名配置多个laravel项目的方法示例
  • Laravel 5.5官方推荐的Nginx配置学习教程
  • Laravel Memcached缓存驱动的配置与应用方法分析
  • Laravel 5+ .env环境配置文件详解

标签:广元 枣庄 蚌埠 萍乡 衢州 大理 衡水 江苏

巨人网络通讯声明:本文标题《laravel 框架配置404等异常页面》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266