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

为什么Laravel项目点击路由链接跳转后出现多余路径段导致URI错误

问题原因

你使用了不带前置斜杠的相对路径cars/create作为链接的href属性值。相对路径的解析规则为:当前页面地址结尾带斜杠(你当前在http://127.0.0.1:8000/cars/)时,浏览器会把相对路径直接拼接到当前路径的末尾,最终得到的拼接结果就是http://127.0.0.1:8000/cars/ + cars/create = http://127.0.0.1:8000/cars/cars/create,和你预期的路径不符。

解决方案

你可以选择以下任意一种方案修复问题:

  • 改为根相对路径:在href的路径前加前置斜杠,告诉浏览器从站点根目录开始解析路径
    <a href="/cars/create"></a>
    
  • (Laravel推荐)使用路由命名生成链接:先给路由定义别名,后续通过别名生成路径,后期修改路由规则也不需要批量修改页面链接
    第一步修改web.php路由定义,增加name方法:
    Route::get('cars/create',function ()
    {
        return view('carsops.create');
    })->name('cars.create');
    
    第二步修改页面链接,用route辅助函数生成地址:
    <a href="{{ route('cars.create') }}"></a>
    
  • 使用Laravel的url辅助函数生成完整路径:
    <a href="{{ url('cars/create') }}"></a>
    

内容的提问来源于stack exchange,提问作者Varun Sharma

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 13:09:03