Laravel 调试:500 或命令行报错但无日志怎么办? 0 个改进

有时 Laravel 项目会出现 500,页面没有任何提示,也无 log 的情况。

HTTP 500 状态,意味着内部解析错误,大部分情况下是 PHP 端出现了问题。

虽然 Laravel 提供了完善的错误提示和日志记录工具,但是这些需要 Laravel 引擎完全启动后才有效。

启动过程中,诸如 storage 目录不可写、composer 依赖出错等问题,都会导致 Laravel 启动失败。

此时该如何定位问题呢?

可以尝试以下方法,在 Handler 类的 report() 方法里,直接打印异常:

app/Exceptions/Handler.php

    public function report(Exception $exception)
    {
        dd($exception);

        parent::report($exception);
        .
        .
        .

    }

此时再次刷新页面,即可看到异常信息。

另外,Artisan 命令行下出现奇怪的异常错误,也可以使用此方法。

本文为 Wiki 文章,邀您参与纠错、纰漏和优化
讨论数量: 2
GalaxyNo_1

看PHP的错误日志

3年前 评论

感谢,接触Laravel不久,解决了我的问题。 :+1: :+1: :+1:

1天前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!