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

Laravel+Vue应用点击按钮跳转privacy-policy路由出现404问题

404问题排查解决步骤
  • 第一步:清除Laravel路由缓存
    Laravel会缓存路由配置来提升性能,新增路由后如果没有清除缓存会无法识别。执行命令清除缓存:
php artisan route:clear

再执行命令查看路由列表,确认privacy-policy路由已正确注册:

php artisan route:list
  • 第二步:检查web.php路由顺序
    如果路由文件中存在/{any}这类通配符路由,必须放在/privacy-policy路由的下方,否则通配符会优先匹配,拦截该路由的请求。
  • 第三步:检查控制器命名空间配置
    Laravel 8及以上版本默认取消了路由的控制器命名空间前缀,你写的Route::get('/privacy-policy', 'SecurityImplementationController@privacy')写法会找不到控制器。有两种修复方式:
    1. 路由文件顶部引入控制器类,路由写法改成:
    use App\Http\Controllers\SecurityImplementationController;
    Route::get('/privacy-policy', [SecurityImplementationController::class, 'privacy']);
    
    1. 在app/Providers/RouteServiceProvider.php中添加$namespace属性,值为App\Http\Controllers,即可兼容旧版本的字符串写法。
  • 第四步:检查视图文件是否存在
    确认resources/views目录下存在privacy.blade.php文件,注意文件名的大小写,Linux服务器对大小写敏感,拼写错误会导致视图加载失败。
  • 第五步:排查Vue路由冲突
    如果项目中使用了Vue Router的history模式,且配置了通配符兜底路由,会把/privacy-policy识别为前端路由,不会向后端发起请求。需要在Vue Router配置中排除该路径,或者配置服务端规则,该路径直接走Laravel入口文件。
  • 第六步:检查服务端重写规则
    确认Nginx/Apache配置支持Laravel伪静态,Nginx配置中需要包含以下规则:
try_files $uri $uri/ /index.php?$query_string;

没有该规则会导致除根路径外的所有路由返回404。

内容的提问来源于stack exchange,提问作者Veenavi Anutthara

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 23:18:03