无法覆盖主页尾部斜杠
Can't override homepage trailing slash
我的站点没有 "homepage" 使用基础 url (mydomain.com)
默认路由包含 _locale
参数,因此,根据我的设置,无法匹配路由的一部分。
配置 A
homepage:
path: /{_locale}/
defaults:
_locale: '%locale%'
requirements:
_locale: '%locales%'
这第一个配置将路由主页与以下 URLs
相匹配
mydomain.com/en
mydomain.com/en/
但是会匹配失败
mydomain.com
mydomain.com/
配置 B
homepage:
path: /{_locale}
defaults:
_locale: '%locale%'
requirements:
_locale: '%locales%'
这第二个配置将匹配路由主页与以下 URLs
mydomain.com
mydomain.com/
mydomain.com/en
但是会匹配失败
mydomain.com/en/
知道我的配置中缺少什么来匹配 4 种可能的 URL 模式吗?
找到我的答案:
homepage:
path: /{_locale}{trailingSlash}
defaults:
_locale: '%locale%'
trailingSlash: ''
requirements:
_locale: '%locales%'
trailingSlash: /?
我的站点没有 "homepage" 使用基础 url (mydomain.com)
默认路由包含 _locale
参数,因此,根据我的设置,无法匹配路由的一部分。
配置 A
homepage:
path: /{_locale}/
defaults:
_locale: '%locale%'
requirements:
_locale: '%locales%'
这第一个配置将路由主页与以下 URLs
相匹配mydomain.com/en
mydomain.com/en/
但是会匹配失败
mydomain.com
mydomain.com/
配置 B
homepage:
path: /{_locale}
defaults:
_locale: '%locale%'
requirements:
_locale: '%locales%'
这第二个配置将匹配路由主页与以下 URLs
mydomain.com
mydomain.com/
mydomain.com/en
但是会匹配失败
mydomain.com/en/
知道我的配置中缺少什么来匹配 4 种可能的 URL 模式吗?
找到我的答案:
homepage:
path: /{_locale}{trailingSlash}
defaults:
_locale: '%locale%'
trailingSlash: ''
requirements:
_locale: '%locales%'
trailingSlash: /?