【发布时间】:2012-04-29 20:44:05
【问题描述】:
我已经安装了 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 让它看起来像设计的其余部分对于我将使用的管理员..
有什么想法吗?谢谢..
【问题讨论】:
-
我最终解决了这个问题,但我不知道为什么会这样。如果我转到 mysite.dev/admin 并让它将我重定向到 /login 它工作正常...但是如果我直接去mysite.dev/admin/login 它做了不正确的重定向..
标签: symfony fosuserbundle