Php 未找到“的路由”;获取/quot;登录时使用Symfony

Php 未找到“的路由”;获取/quot;登录时使用Symfony,php,symfony,Php,Symfony,我一直在努力一步一步地学习本教程。当我尝试使用不正确的用户名和密码登录时,代码似乎有效。。。但是当我输入正确的一个时,我得到了这个错误 找不到“GET/(from”/app/path/web/app\u dev.php/login)的路由 目前我的文件结构如下所示 路由\u dev.yml _wdt: resource: "@WebProfilerBundle/Resources/config/routing/wdt.xml" prefix: /_wdt _profiler

我一直在努力一步一步地学习本教程。当我尝试使用不正确的用户名和密码登录时,代码似乎有效。。。但是当我输入正确的一个时,我得到了这个错误

找不到“GET/(from”/app/path/web/app\u dev.php/login)的路由

目前我的文件结构如下所示

路由\u dev.yml

_wdt:
    resource: "@WebProfilerBundle/Resources/config/routing/wdt.xml"
    prefix:   /_wdt

_profiler:
    resource: "@WebProfilerBundle/Resources/config/routing/profiler.xml"
    prefix:   /_profiler

_configurator:
    resource: "@SensioDistributionBundle/Resources/config/routing/webconfigurator.xml"
    prefix:   /_configurator

_main:
    resource: routing.yml



login:
    pattern:   /login
    defaults:  { _controller: SimpleProfileBundle:Security:login }

login_check:
    pattern:   /login_check

test_security:
    pattern: /secure_area
    defaults: {_controller: SimpleProfileBundle:Security:dumpString }
security:
encoders:
    Symfony\Component\Security\Core\User\User: plaintext
    Simple\ProfileBundle\Entity\User:
        algorithm:        sha1
        encode_as_base64: false
        iterations:       1

role_hierarchy:
    ROLE_ADMIN:       ROLE_USER
    ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]

providers:
    main:
        entity:
            class: Simple\ProfileBundle\Entity\User
            property: username

firewalls:

    secured_area:
        pattern:    ^/
        anonymous: ~
        form_login:
            login_path:  login
            check_path:  login_check
    dev:
        pattern:  ^/(_(profiler|wdt)|css|images|js)/
        security: false

    login:
        pattern:  ^/demo/secured/login$
        security: false

access_control:
      - { path: ^/secure_area, roles: ROLE_ADMIN }
security.yml

_wdt:
    resource: "@WebProfilerBundle/Resources/config/routing/wdt.xml"
    prefix:   /_wdt

_profiler:
    resource: "@WebProfilerBundle/Resources/config/routing/profiler.xml"
    prefix:   /_profiler

_configurator:
    resource: "@SensioDistributionBundle/Resources/config/routing/webconfigurator.xml"
    prefix:   /_configurator

_main:
    resource: routing.yml



login:
    pattern:   /login
    defaults:  { _controller: SimpleProfileBundle:Security:login }

login_check:
    pattern:   /login_check

test_security:
    pattern: /secure_area
    defaults: {_controller: SimpleProfileBundle:Security:dumpString }
security:
encoders:
    Symfony\Component\Security\Core\User\User: plaintext
    Simple\ProfileBundle\Entity\User:
        algorithm:        sha1
        encode_as_base64: false
        iterations:       1

role_hierarchy:
    ROLE_ADMIN:       ROLE_USER
    ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]

providers:
    main:
        entity:
            class: Simple\ProfileBundle\Entity\User
            property: username

firewalls:

    secured_area:
        pattern:    ^/
        anonymous: ~
        form_login:
            login_path:  login
            check_path:  login_check
    dev:
        pattern:  ^/(_(profiler|wdt)|css|images|js)/
        security: false

    login:
        pattern:  ^/demo/secured/login$
        security: false

access_control:
      - { path: ^/secure_area, roles: ROLE_ADMIN }
有什么想法吗?
谢谢

我想错误消息描述了这里的问题。您没有为
/
定义路由。当您尝试使用错误的凭据登录时,您将被重定向到登录(有路由)。但是,如果成功,您将被重定向到
/
。您尚未为根目录定义路由

您必须添加一条路线,如:

index:
    pattern:   /
    defaults:  { _controller: YourBundle:IndexController:index }

此错误是由于成功登录后重定向以及缺少默认控制器造成的。请看一下安全组件

如文档所述,成功登录后,您可以使用以下选项配置目标:

always_use_default_target_path: false
default_target_path:            /
target_path_parameter:          _target_path
use_referer:                    false

\u welcome
添加到
app/config/routing\u dev.yml

_welcome:
    pattern:  /
    defaults: { _controller: AppBundle:Default:index }

上面的答案有效,但登录后会继续重定向回主页,因为这意味着重定向到/secure_区域?有什么想法吗?@BrentFrench你能发布你的更新配置吗?你能把我添加到skype中让我解释一下吗?(elmbrent118)谢谢,这解决了错误,但它不会在您登录后进入/secure_区域?不,不会。但是,您可以更改它重定向到的内容。有一个关于如何配置重定向的部分。我已经讨论过这个问题,但仍然无法使它工作?可以在skype上给你看吗?(elmbrent118)您可能应该提出一个新问题,说明您的重定向问题(包括配置)。可能重复