嘗試登錄時,Symfony2告訴我提供了錯誤的憑據。第二次嘗試。任何想法爲什麼會發生? 要重現此行爲,我必須註銷,清除Cookie,再次進入登錄頁面並重新登錄。Symfony2:在清除cookie後第一次嘗試登錄時不起作用
我正在使用FOSUserBundle。
config.yml:
framework:
#esi: ~
secret: asdfsadfasdf
#translator: { fallback: en }
charset: UTF-8
router: { resource: "%kernel.root_dir%/config/routing.yml" }
form: true
csrf_protection: true
validation: { enable_annotations: true }
templating: { engines: ['twig'], assets_version: v1.2 } #assets_version: SomeVersionScheme
translator: { fallback: de }
session:
default_locale: de
auto_start: false
lifetime: 1000000
...
security.yml:
security:
encoders:
Symfony\Component\Security\Core\User\User: plaintext
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:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
login:
pattern: ^/login$
security: false
public:
pattern: ^/.*
form_login:
provider: fos_userbundle
check_path: /login_check
remember_me: true
remember_me:
key: aaasfasdfasdfsadfsadf
lifetime: 1296000 #15 days in second
path: /
anonymous: true
logout: true
access_control:
- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY}
- { path: ^/register, roles: IS_AUTHENTICATED_ANONYMOUSLY}
#- { path: ^/_internal, roles: IS_AUTHENTICATED_ANONYMOUSLY, ip: 127.0.0.1 }
- { path: ^/events/create, roles: ROLE_USER }
#...
acl:
connection: default
的routing.yml:
_imagine:
resource: .
type: imagine
_index:
resource: "@AjadoEventHubBundle/Controller/IndexController.php"
type: annotation
fos_comment_api:
type: rest
resource: "@FOSCommentBundle/Resources/config/routing.yml"
prefix: /api
fos_user_security:
resource: "@FOSUserBundle/Resources/config/routing/security.xml"
...
@ FOSUserBundle /資源/配置/路由/ security.xml文件:
<routes xmlns="http://symfony.com/schema/routing"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd">
<route id="fos_user_security_login" pattern="/login">
<default key="_controller">FOSUserBundle:Security:login</default>
</route>
<route id="fos_user_security_check" pattern="/login_check">
<default key="_controller">FOSUserBundle:Security:check</default>
</route>
<route id="fos_user_security_logout" pattern="/logout">
<default key="_controller">FOSUserBundle:Security:logout</default>
</route>
</routes>
嘗試添加相關代碼到你的問題,「登錄」 symfony中2是非常抽象的。 – ilanco 2012-04-23 09:42:03
@ilanco:讓我知道你是否需要更多的代碼。我剛纔發現我使用的是一個非常老的FOSUserBundle版本(6cdd9c292afa219ef799893061eaae1fc400ae33) - 今天會嘗試更新... – stoefln 2012-04-23 10:01:48
您是否可以包含顯示登錄路由的路由部分(如果有)? – 2012-04-26 14:32:37