首页 > 解决方案 > 带有允许的空前缀的 symfony 路由导入不起作用

问题描述

当从带有前缀的资源文件中导入路由时,symfony 不会匹配带有空前缀的有效路由,除非 URL 中包含双 / (//)。

如何重现给定此设置:

web:
  resource: '_routes.yaml'
  prefix: /{route_prefix?}
  requirements:
    route_prefix: valueA|valueB

和 _routes.yaml:

product_list:
  path: '/brands/{brand_name}/{id}.html'
  controller: App\Controller\Brand\ProductController::index

路由器将匹配: 但不会匹配/valueA/brands/{brand_name}/{id}.html, 除非您提供这样的 URL: /valueB/brands/{brand_name}/{id}.html /brands/{brand_name}/{id}.html//brands/{brand_name}/{id}.html

这真的是一个错误还是我不明白的东西?

标签: phproutingroutessymfony4prefix

解决方案


推荐阅读