我有以下路线
hekdb_login_show:
path: /Login/showForm
defaults: { _controller: HEKdbBundle:Login:showForm }
hekdb:
path: /
defaults:
_controller: FrameworkBundle:Redirect:redirect
route: hekdb_login_show
permanent: true
(实际上还有更多,但这两个就足够了。)在将主机名重定向到登录表单后,最后一条路由应该重定向到网站的每个人只有“/”。
问题是最后一个路由规则中的路径“/”与每个路径匹配,因为每个路径都以“/”开头。结果是无限重定向循环。
我读到该路径被解释为正则表达式,所以我尝试了模式“^ / $”。但这导致PHP错误。然后我尝试转义特殊的正则表达式符号“^”和“$”,即“\ ^ / \ $”。但这也不起作用。
答案 0 :(得分:0)
最后包括此路线以获取已通过任何现有路线的所有内容。我认为这就是你真正想要的。
zayso_core_unknown:
pattern: /{url}
defaults: { _controller: ZaysoAreaBundle:Public:index, url: "unknown" }
requirements:
url: ".+"
不记得我从哪里得到它但它能完成这项任务。
你错了/匹配一切。我经常把这作为我的第一条路线:
zayso_core_index:
pattern: /
defaults: { _controller: ZaysoAreaBundle:Public:index }
它按预期工作。
您可能想要与app / console路由器混淆:匹配以查看会发生什么。