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

Laravel 8 相同URI路由未按自上而下匹配始终执行最后一条原因咨询

Laravel同URI路由触发最后一条的原因说明

核心成因

你所了解的「路由自上而下匹配」规则,适用场景是请求方法不同、或者URI不同的路由的匹配优先级。当你定义的多条路由满足如下两个完全一致的条件时,Laravel的路由注册逻辑会直接用后面的定义覆盖前面的定义,前序路由根本不会被存入最终的路由表,也就不存在匹配优先级的问题:

  • 请求方法完全相同(Route::view方法默认注册的是GET类型的路由,你给出的三条路由均为GET请求)
  • URI完全相同(三条路由的URI均为testing)

你可以执行命令php artisan route:list查看当前生效的路由列表,搜索URI为testing的条目,会发现仅存在最后定义的那一条,前两条已经被覆盖消失,所以你无论怎么调整排序,最终生效的永远是最后注册的那条同方法同URI路由。

配置错误说明

你的配置确实不符合Laravel路由的定义规则:Laravel不支持为同请求方法、同URI定义多条独立路由,重复定义时只会保留最后一条。如果你需要在同一URI下实现不同的逻辑处理,需要在单条路由的处理函数/控制器方法中自行编写条件判断实现,不能靠定义多条重复路由达成需求。

内容的提问来源于stack exchange,提问作者Dahliar Ananda

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 22:45:03