我已经安装了 FOSUserBundle 并且在一定程度上可以正常工作。它让我登录,它完成了它应该做的一切——除了将我重定向到正确的地方。
我在我的 AdminBundle routes.yml 文件中设置了我的路由(来自 github 上 FOSUserBundle 安装文档的路由)
我为它创建了一个防火墙:
security:
encoders:
"FOS\UserBundle\Model\UserInterface": sha512
role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]
providers:
fos_userbundle:
id: fos_user.user_manager
firewalls:
admin_area:
pattern: ^/admin/
form_login:
check_path: /admin/login_check
login_path: /admin/login
provider: fos_userbundle
anonymous: true
logout:
path: /admin/logout
target: /admin/
access_control:
- { path: ^/admin/login$, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin/, roles: ROLE_ADMIN }
唯一的问题是,当我转到http://mysite.dev/admin时,它会将我重定向到正确的 http: //mysite.dev/admin/login ... 所以我然后登录并将我重定向到http: //mysite.dev/而不是 /admin
重要的是要注意,我已经扩展了登录表单,使它看起来像我自己的......通过在我的 AdminBundle 的视图文件夹中创建一个 layout.html.twig 让它看起来像管理员设计的其余部分我会用的..
有任何想法吗?谢谢..