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

Laravel api.php路由返回404,web.php路由正常求助

解决Laravel API路由404问题

  • 检查API路由前缀配置
    打开app/Providers/RouteServiceProvider.php,确认mapApiRoutes方法里的前缀设置是否正确,默认配置如下:

    protected function mapApiRoutes()
    {
        Route::prefix('api')
             ->middleware('api')
             ->namespace($this->namespace)
             ->group(base_path('routes/api.php'));
    }
    

    重点确认prefix('api')是否存在,未被修改为其他值。

  • 验证路由注册状态
    执行命令php artisan route:list,查看输出列表中是否存在GET|HEAD api/stocks这条路由。如果没有,说明api.php中的路由未被正确加载,需检查RouteServiceProvider内的路由映射逻辑。

  • 确认控制器命名空间
    确保api.php顶部已正确导入控制器命名空间:

    use App\Http\Controllers\StockController;
    

    或者在路由中使用完整命名空间路径:

    Route::get('/stocks',[\App\Http\Controllers\StockController::class,'index']);
    
  • 检查Web服务器配置

    • 若使用Apache,确认public/.htaccess中的重写规则完整,默认Laravel规则可正确处理/api前缀请求;
    • 若使用Nginx,确保配置文件中的try_files规则正确:
      location / {
          try_files $uri $uri/ /index.php?$query_string;
      }
      
  • 彻底清理缓存
    依次执行以下命令,确保所有缓存被清除:

    php artisan route:clear
    php artisan optimize:clear
    

    开发环境建议避免使用route:cache,因为路由缓存会覆盖实时的路由配置。


内容的提问来源于stack exchange,提问作者Taiwan No.1

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 16:48:10