Php 在symfony 2中添加多个防火墙
我有两个包,路由文件Php 在symfony 2中添加多个防火墙,php,symfony,symfony-forms,symfony-2.1,symfony-2.3,Php,Symfony,Symfony Forms,Symfony 2.1,Symfony 2.3,我有两个包,路由文件app/config/routing是: shop_admin: resource: "@ShopAdminBundle/Resources/config/routing.yml" prefix: /admin shop_desktop: resource: "@ShopDesktopBundle/Resources/config/routing.yml" prefix: / ShopDesktopBundle的路由文件是: log
app/config/routing
是:
shop_admin:
resource: "@ShopAdminBundle/Resources/config/routing.yml"
prefix: /admin
shop_desktop:
resource: "@ShopDesktopBundle/Resources/config/routing.yml"
prefix: /
ShopDesktopBundle
的路由文件是:
login:
pattern: /login
defaults: { _controller: ShopDesktopBundle:User:login }
login_check:
pattern: /login_check
admin_login:
path: /login
defaults: { _controller: ShopAdminBundle:Login:login }
admin_login_check:
path: /login_check
ShopAdminBundle
的路由文件是:
login:
pattern: /login
defaults: { _controller: ShopDesktopBundle:User:login }
login_check:
pattern: /login_check
admin_login:
path: /login
defaults: { _controller: ShopAdminBundle:Login:login }
admin_login_check:
path: /login_check
security.yml
:
firewalls:
# disables authentication for assets and the profiler, adapt it according to your needs
user_secured_area:
pattern: ^/
form_login:
login_path: login
check_path: login_check
username_parameter: _username
password_parameter: _password
logout:
invalidate_session: true
path: shop_logout_user
target: /
anonymous: true
admin_secured_area:
pattern: ^/admin
form_login:
login_path: /admin/login
check_path: /admin/login_check
username_parameter: _username
password_parameter: _password
anonymous: true
当我尝试在ShopAdminBundle
上进行身份验证时,ShopDesktopBundle的身份验证工作正常,我得到错误:无法找到路径“/admin/login\u check”的控制器。路由配置错误。
我想问题出在我的文件security.yml
中。你能帮我吗?Thx提前作为改变防火墙位置的第一件事user\u secured\u area
适用于所有路线,它从不点击admin\u secured\u area
。我相信这会解决你的问题
firewalls:
admin_secured_area:
pattern: ^/admin
...
user_secured_area:
pattern: ^/
...