Symfony打开限制访问的默认页面

时间:2015-01-27 06:32:13

标签: symfony authentication symfony-2.6

如何在用户进入限制页面时自动重定向到/注册为来宾?

我的错误解决方案:在security.yml我设置了

firewalls:
    default:
        form_login:
            login_path: /register-as-guest

这样做有效,但是当用户在登录时输入错误的凭据时,会将其重定向到/register-as-guestlogin_path),但应重定向到/login

2 个答案:

答案 0 :(得分:1)

你走在正确的轨道上:) 正如您在the docs中所看到的那样,需要更多配置。 如果您希望在登录成功/失败时发生显式行为,则应在防火墙下使用这些配置设置:

firewall:
    default:
        ...
        form_login:
           ...
           # login success redirecting options
           always_use_default_target_path: false
           default_target_path:            / # use this if you want a standard page to be shown on login success
           target_path_parameter:          _target_path
           use_referer:                    false # set this to true to redirect back to the previously attempted page

           # login failure redirecting options
           failure_path:    /foo 
           failure_forward: false # this is what you need
           failure_path_parameter: _failure_path
           failure_handler: some.service.id
           success_handler: some.service.id

希望这会有所帮助:)

答案 1 :(得分:0)

只需使用 FOSUserBundle ,您需要的所有内容都包含在那里,然后您就不必自己实现它了,而且它是非常好的记录它是非常的整合到项目中