找不到 Symfony2 突然登录路径
Posted
技术标签:
【中文标题】找不到 Symfony2 突然登录路径【英文标题】:Symfony2 sudenly login route not found 【发布时间】:2014-11-29 06:56:55 【问题描述】:今天早上,我在控制器上编写了一些新功能并且运行良好,但 10 分钟后突然尝试访问 Symfony 告诉我的方法之一:“找不到“GET /login”的路由,即使我尝试访问 app.php 也会对我说同样的异常。
在这个项目中,我通过 @Route 和 routing.yml 文件使用路由
下面我将展示我的配置
路由的文件
app/config/routing.yml
frab: 资源:“@FrabApiBundle/Resources/config/routing.yml”
frab_routing: 资源:“@FrabApiBundle/控制器” 类型:注解 前缀:/
fos_user_security: 资源:“@FOSUserBundle/Resources/config/routing/security.xml” 前缀:管理员 fos_user_profile: 资源:“@FOSUserBundle/Resources/config/routing/profile.xml” 前缀:/profile
fos_user_register: 资源:“@FOSUserBundle/Resources/config/routing/registration.xml” 前缀:/注册
fos_user_resetting: 资源:“@FOSUserBundle/Resources/config/routing/resetting.xml” 前缀:/resetting
fos_user_change_password: 资源:“@FOSUserBundle/Resources/config/routing/change_password.xml” 前缀:/profile
安全文件
app/config/security.yml
安全性: 编码器: 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_provider.username id: fos_user.user_provider.username_email firewalls: dev: pattern: ^/(_(profiler|wdt)|css|images|js)/ security: false dashboard: pattern: ^/ security: true form_login: provider: fos_userbundle check_path: /admin/login_check login_path: /login default_target_path: /ds csrf_provider: form.csrf_provider logout: path: /ds/logout target: /ds anonymous: ~ access_control: - path: ^/, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: http - path: ^/ds, roles: ROLE_SUPER_ADMIN, requires_channel: http - path: ^/ds/users, roles: ROLE_SUPER_ADMIN, requires_channel: http - path: ^/ds/groups, roles: ROLE_SUPER_ADMIN, requires_channel: http - path: ^/ds/photos, roles: ROLE_SUPER_ADMIN, requires_channel: http - path: ^/ds/mail, roles: ROLE_SUPER_ADMIN, requires_channel: http - path: ^/ds/sendmail, roles: ROLE_SUPER_ADMIN, requires_channel: http - path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: http - path: ^/login_check, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: http
我能做什么?
【问题讨论】:
【参考方案1】:您已将 admin
前缀添加到 @FOSUserBundle/Resources/config/routing/security.xml
资源,因此您的登录路径 (fos_user_security_login
) 现在将位于 /admin/login
。
【讨论】:
在项目上无事可做将近两个小时后(我出去吃午饭),我试图访问 app.dev 和..surprise!刚开始工作。是的,我知道我添加了管理员并且工作正常,但这很奇怪,因为即使尝试访问 app.php Symphony 也会将我重定向到 app.php/login 并告诉我那个奇怪的异常。不管怎样,谢谢! :)以上是关于找不到 Symfony2 突然登录路径的主要内容,如果未能解决你的问题,请参考以下文章