Symfony2 防止在主页上注销

Symfony2 prevent logout on main page

在我的 Symfony2 项目中,我只想安全访问 /user 模式下的任何 URL;而索引页面 (/) 和其他一些页面(例如 /about )应该可以在不登录的情况下使用。目前所有这些工作正常。 但是,在用户登录后,如果他访问索引页面或关于页面,他将被注销!我该如何防止这种情况发生?

我尝试在“/”的 'secured area' 规则之后为“/”和“/about”模式添加 security: false 以及 anonymous: ~ 防火墙规则用户”模式。但是还是不行。

以下问题的答案可能与我想要的非常接近:symfony 2: get current logged in user on non secured pages through firewall。该答案唯一缺少的是:如何在被访问控制拒绝后将任何“/用户”URL重定向到登录页面?

啊,好吧,经过更多尝试,我自己得到了答案。 关键是用 ^/ 模式的防火墙规则包含整个应用程序,其中包含 anonymous: ~form_login 块。