You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel项目加载出现404错误:旧页面替代默认页面问题求助

Laravel 项目显示旧404页面而非默认页面的原因及修复方法

可能的原因

  • 存在自定义404视图文件:Laravel会优先加载resources/views/errors/404.blade.php,如果第二个项目中存在这个自定义文件,会直接覆盖框架默认页面。大概率是你复制旧项目文件、手动创建过该视图,或者引入的第三方代码生成了这个文件。
  • 缓存未清理:如果之前执行过php artisan view:cache或php artisan config:cache,缓存的视图/配置可能保留了旧404页面的关联规则,导致默认页面无法加载。
  • 错误处理逻辑被修改:在app/Exceptions/Handler.php中,可能添加了针对404错误的自定义响应代码,强制指向旧页面路径。

修复方法

  1. 删除自定义404视图
    进入项目的resources/views/errors目录,若存在404.blade.php文件,直接删除即可。Laravel会自动 fallback 到框架默认的404页面。

  2. 清除缓存
    执行以下命令清理视图和配置缓存:

    php artisan view:clear
    php artisan config:clear
    
  3. 恢复默认错误处理逻辑
    打开app/Exceptions/Handler.php,检查render或register方法中是否存在类似以下的自定义代码:

    public function render($request, Throwable $exception)
    {
        if ($exception instanceof NotFoundHttpException) {
            return response()->view('errors.old_404', [], 404);
        }
        return parent::render($request, $exception);
    }
    

    若有,删除这段自定义404处理代码,保留return parent::render($request, $exception)即可恢复默认逻辑。

  4. 验证效果
    访问一个不存在的路由,确认页面是否恢复为Laravel自带的默认404页面。

内容的提问来源于stack exchange,提问作者Ashish Dake

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 08:25:22