Я создаю сайт с Symfony 2.8
и FOSUserBundle
для аутентификации.Check_path «login_check» для метода входа «form_login» не соответствует шаблону брандмауэра «^/admin /(.*)»
Я хочу, чтобы сайт был общедоступным для всех, а бэк-офис (с префиксом /admin
) был доступен после авторизации при входе в систему.
Я просто продолжаю получать сообщение об ошибке:
The check_path "/login_check" for login method "form_login" is not matched by the firewall pattern "^/admin/(.*)".
Мои app/config/security.yml
выглядит следующим образом:
providers:
fos_userbundle:
id: fos_user.user_provider.username
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
admin:
pattern: ^/admin/(.*)
form_login:
provider: fos_userbundle
login_path: /login
check_path: /login_check
always_use_default_target_path: false
default_target_path: /admin
logout:
path: /logout
target: /login
anonymous: true
main:
anonymous: ~
access_control:
- { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
#- { path: ^/login_check, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin/, role: ROLE_ADMIN }
Я знаю, что есть что-то неправильное в form_login
, но я просто не могу понять его .. .
PS:Аналогичные вопросы были заданы, но без больших ответы (или ответы, которые работают для меня, если на то пошло).
Уже попробовал, что тоже не повезло: S – houcros