我创建了一个名为“User”的Bundle。在一般路由中,我将/ user添加到每个UserBundle URL。因此,例如,当我在UserBundle中定义路由/列表时,实际路径为http://myapp.loc/user/list。
我正试图强迫用户登录使用这个网站,我正在这样做:
security:
firewalls:
login_firewall:
pattern: ^/user/login
anonymous: ~
secured_area:
pattern: ^/
form_login:
login_path: user_login
check_path: user_login_check
default_target_path: /
logout:
path: /user_logout
target: user_login
remember_me:
key: atipics-soft2012
lifetime: 3600
access_control:
- { path: ^/, roles: ROLE_USER }
providers:
users:
entity: { class: MyApp\UserBundle\Entity\User, property:email }
encoders:
MyApp\UserBundle\Entity\User: { algorithm: sha512, iterations: 10 }
我收到这样的错误:
InvalidConfigurationException:路径的配置无效 “security.firewalls.secured_area”:check_path“user_login_check” 对于登录方法,“form_login”与防火墙模式不匹配 “^ /”。
可能是什么问题?
我已经在路线文件中添加了这条路线。
答案 0 :(得分:1)
我不知道这是一个错误还是用于这种方式,但check_path
不接受路由名称。您必须将其设置为路径。