Laravel 5.1 中如何自定义 500 错误页面

500错误页面

编辑PHP文件app/Exceptions/Handler.php内容如下:

public function render($request, Exception $e)
{

    if ($e instanceof ModelNotFoundException) {
        $e = new NotFoundHttpException($e->getMessage(), $e);
    }

    if($e instanceof \Symfony\Component\Debug\Exception\FatalErrorException 
        && !config('app.debug')) {
        return response()->view('errors.default', [], 500);
    }

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

然后编辑自定义错误页面对应视图文件errors.default.blade.php

学院君 has written 737 articles

终身学习者,Laravel学院院长

5 thoughts on “Laravel 5.1 中如何自定义 500 错误页面

  1. zhang says:

    public function render($request, Exception $e)
    {
    $debug = config(‘app.debug’, false);

    if ($debug) {
    // 当 debug 为 true 时,返回默认的报错页面
    return (new SymfonyDisplayer($debug))->createResponse($e);
    }

    return response()->view(‘errors.default’, [‘expection’ => $e], 500);
    return parent::render($request, $e);
    }

    试试这样

    1. zhang says:

      public function render($request, Exception $e)
      {
      $debug = config(‘app.debug’, false);

      if ($debug) {
      // 当 debug 为 true 时,返回默认的报错页面
      return (new SymfonyDisplayer($debug))->createResponse($e);
      }

      return response()->view(‘errors.default’, [‘expection’ => $e], 500);
      }

  2. wlzx120 says:

    laravel1.3.3 直接在views\errors下添加403 404页面不用修改任何方法可以自定义,但是500错误没法定义,还是以前的报错页面,并且Handler中$e->getStatusCode无法获取任何500这个状态码,上面的修改方法无效

发表评论

标记为*的字段是必填项(邮箱地址不会被公开)

你可以使用这些HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>