FOSUserBundle logout mit prefix funktioniert nicht

Ich habe ein sehr seltsames problem mit symfony2 und die FOSUserBundle.

Kann ich Abmelden, mit /en/logout, aber nicht mit /nl/logout oder /fr/logout.

Wenn ich versuche die Abmeldung mit nl oder fr bekomme ich:

You must activate the logout in your security firewall configuration.

Obwohl ich es konfiguriert. Ich kann nicht scheinen, um wickeln Sie meinen Kopf, warum die /en/logout funktioniert und der rest nicht.

Dies ist mein code:

Sicherheit.yml

security:
providers:
    fos_userbundle:
        id: fos_user.user_provider.username_email

encoders:
    FOS\UserBundle\Model\UserInterface: sha512

firewalls:
    main:
        pattern: ^/
        form_login:
            provider: fos_userbundle
            csrf_provider: form.csrf_provider
            check_path: fos_user_security_check
            default_target_path: /%locale%/login
            always_use_default_target_path: true
            failure_path:   /%locale%/login
        logout:
            path: /%locale%/logout
            target: homepage
        anonymous:    true

routing.yml

user bundle > FOS
    fos_user_security:
        resource: "@FOSUserBundle/Resources/config/routing/security.xml"
        prefix: /{_locale}
        requirements:
            _locale: fr|nl|en

controller

    class LoginController extends Controller {

    /**
     * @Route("{_locale}/logout-test", name="logout", defaults={"_locale"="en"} , requirements = {"_locale" = "fr|en|nl"})
     * @Template()
     */
    public function logoutAction()
    {
        $test = "";
        #throw new \RuntimeException('You must activate the logout in your security firewall configuration.');
        #return $this->redirect($this->generateUrl('homepage'));;
    }
}

Kann mir jemand helfen, oder mir sagen, wo schauen Sie als Nächstes? Es wäre sehr geschätzt werden

  • Haben Sie versucht, zu definieren, default_target_path wie /login , ohne locale?
  • der login funktioniert einwandfrei, es ist das logout, das die Probleme verursacht
  • Versuchen zu definieren, logout als Pfad: /logout$
InformationsquelleAutor Nealv | 2013-02-18
Schreibe einen Kommentar