显然找不到Symfony2.5 + FOSUserBundle检查路径

Arn*_*aud 2 symfony fosuserbundle

我开始使用新的Symfony应用程序,我使用FOSUserBundle.我安装它,加载捆绑并配置它.这是我的configuration.yml:

fos_user:
    db_driver: orm
    firewall_name: main
    user_class: Myapp\UserBundle\Entity\User
Run Code Online (Sandbox Code Playgroud)

和我的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
        in_memory:
            memory: ~

    firewalls:
        dev:
            pattern: ^/(_(profiler|wdt)|css|images|js)/
            security: false

        default:
            anonymous: ~

        main:
            pattern: ^/
            form_login:
                login_path: fos_user_security_login
                check_path: fos_user_security_check
                provider: fos_userbundle
                csrf_provider: form.csrf_provider
                default_target_path: /
            logout:       true
            anonymous:    true

    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 }
Run Code Online (Sandbox Code Playgroud)

现在,当我去的时候localhost/myapp/web/app_dev.php/login,我尝试登录后得到以下错误500(我在访问登录表单时没有问题,这是在我提交之后):

您必须使用安全防火墙配置中的form_login配置防火墙处理的检查路径

form_login在我看来,我的安全防火墙配置配置...我错过了什么?

Jov*_*vic 8

我在想你没有导入FOSUserBundle的路由文件.你是否?

如果不是这样你是这样做的:

http://symfony.com/doc/current/bundles/FOSUserBundle/index.html#step-6-import-fosuserbundle-routing-files

除此之外,default防火墙的目的是什么?当它试图"找到正确使用的防火墙"时,它可能会拦截安全组件.