为什么Laravel中的ExceptionHandler中的render函数无法执行?

时间:2019-06-17 12:59:11

标签: php laravel exception exceptionhandler

我想显示页面500 internal server error页面,但是除了显示报告或呈现报告外,它还显示典型的Laravel异常视图以及错误消息。

public function report(Exception $exception)
{
    parent::report($exception);
}

/**
 * Render an exception into an HTTP response.
 *
 * @param  \Illuminate\Http\Request  $request
 * @param  \Exception  $exception
 * @return \Illuminate\Http\Response
 */
public function render($request, Exception $exception)
{

  //  $exception = FlattenException::create($exception);
    $statusCode = $exception->getStatusCode($exception);
    dd($statusCode);

    if ($statusCode === 404 or $statusCode === 500) {
        return response()->view('errors.' . $statusCode, [], $statusCode);
    }
    return parent::render($request, $exception);
}

2 个答案:

答案 0 :(得分:0)

如果在500错误而不是500错误页面上看到woops消息,那是因为该应用处于调试模式。

在您的.env文件中,编辑以下行

APP_DEBUG=true

成为

APP_DEBUG=false

答案 1 :(得分:0)

您可以检查您的bootstrap/app.php文件以查看异常处理程序是否正确绑定吗?默认配置为like this

前一段时间,我写了一篇有关implementing a custom exception handler in Larvel的帖子,其中可能包含一些有关您的问题的有用信息。