我正在基于Symfony2开发一个简单的商店(用于编译商品)。Symfony2防火墙:重定向到注册表单而不是登录
将商品添加到购物车后,用户可以继续提供其商品的摘要,然后请求编译的商品。
security:
firewalls:
secured_area:
pattern: ^/
anonymous: ~
provider: default
form_login:
login_path: acme_security_login_route
check_path: acme_security_login_check_route
csrf_provider: form.csrf_provider
logout: ~
default:
anonymous: ~
access_control:
- { path: ^/request-offer, roles: ROLE_CLIENT }
providers:
default:
entity: { class: AcmeShopBundle:User }
encoders:
Symfony\Component\Security\Core\User\User: plaintext
Acme\ShopBundle\Entity\User:
algorithm: bcrypt
cost: 15
这意味着,如果客户端登录,他会直接去总结,如果没有,他会被重定向到登录页面:
摘要页由以下防火墙保护。
现在,由于客户更有可能成为新客户,我希望重定向到注册表单。
SecurityBundle Configuration Reference中描述的选项不允许这样做。 当然,改变login_path
也不是解决方案。
什么是最好的解决方案?
仅当用户访问资源的权限不足时才会调用access_denied_handler,但如果他根本没有进行身份验证,则仅调用access_denied_handler。 但是你的回答让我想到解决方案,谢谢! – mpbzh