symfony - FriendsOfSymfony/FOSUserBundle 路由

标签 symfony

大家好:) 好吧,我安装了 fosuserbundle 并完成了所有配置,但是当我输入用户名和密码时,我得到了 *未找到“GET/”的路由(来自//..../web/app_dev.php/login”)*

这就是我的 security.yml:

security:
encoders:
    FOS\UserBundle\Model\UserInterface: sha512

role_hierarchy:
    ROLE_ADMIN:       ROLE_USER
    ROLE_SUPER_ADMIN: ROLE_ADMIN

providers:
    fos_userbundle:
        id: fos_user.user_provider.username

firewalls:
    main:
        pattern: ^/
        form_login:
            provider: fos_userbundle
            csrf_provider: form.csrf_provider
        logout:    true
        anonymous: true
        #http_basic:
        #    realm: "Secured Demo Area"

access_control:
    - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/admin/, role: ROLE_ADMIN }

我的UserBundle/Ressources/config/routing.yml

fos_user_security:
    resource: "@FOSUserBundle/Resources/config/routing/security.xml"

fos_user_profile:
    resource: "@FOSUserBundle/Resources/config/routing/profile.xml"
    prefix: /profile

fos_user_register:
    resource: "@FOSUserBundle/Resources/config/routing/registration.xml"
    prefix: /register

fos_user_resetting:
    resource: "@FOSUserBundle/Resources/config/routing/resetting.xml"
    prefix: /resetting

fos_user_change_password:
     resource: "@FOSUserBundle/Resources/config/routing/change_password.xml"
     prefix: /profile

我的应用程序/config/routing.yml:

sdz_blog:
    resource: "@SdzBlogBundle/Resources/config/routing.yml"
    prefix:   /blog

_user_bundle:
    resource: "@SdzUserBundle/Resources/config/routing.yml"

请帮助我,我尝试了很多次:(

最佳答案

默认情况下,成功登录后,FosUserBundle 会重定向到 /。如果您在此处显示的是您拥有的唯一路由,则没有任何路由与此模式匹配,因为它们都带有前缀(主要路由为 /blog)。

在命令行中运行 php app/console router:debug 并检查是否有任何与模式 / 匹配的路由。

如果没有,您可以创建一个或更改 FosUserBundle 的默认重定向,如下所示:

# app/config/security.yml
security:
    firewalls:
        main: # or any other firewall name
            form_login:
                default_target_path: # Your route here

更多详情您可以查看:

http://symfony.com/doc/current/reference/configuration/security.html#redirecting-after-login

关于symfony - FriendsOfSymfony/FOSUserBundle 路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22427616/

相关文章:

php - 301 使用正确的 slug 重定向

php - Symfony 多对多表单

php - Zend Framework 和 Symfony 选择哪个?

php - EasyAdmin 3 : limit data to the logged-in user still shows other data in form dropdowns

php - elasticsearch:在给定字段上以给定值施加额外的提升

php - Silex 对象无法转换为有效的数组键

java - Symfony2 Assetic yuicompressor 未知错误

php - 是否可以在 Flash 消息中添加链接?

symfony - 为 Symfony2.8 配置 JWT 时出错

Mac OS 上的 PHP 7.2 memcached 扩展