Symfony2 从 ssl 子域注销

Symfony2 Logging out from ssl subdomain

我不得不为 ssl 连接使用子域。

我解决登录/注销过程的想法是在 ssl 子域上使用到 "redirect" 的路由配置并使用 https。注销过程应该执行相反的操作:"redirect" 到原始域并使用 http。 一切正常,除了用户在注销过程后仍然登录。

我的 routing.yml 看起来像:

userarea:
    resource: "@BlueChordUserBundle/Controller/"
    type:     annotation
    schemes:  [https]
    host:     example.hosted-secure.com
    prefix:   /

adminarea:
    resource: "@BlueChordAdminBundle/Controller/"
    type:     annotation
    schemes:  [https]
    host:     example.hosted-secure.com
    prefix:   /

website:
    resource: "@BlueChordWebsiteBundle/Controller/"
    type:     annotation
    prefix:   /

login_check:
    path:   /{_lang}/dashboard/login_check
    schemes:  [https]
    host:     example.hosted-secure.com

logout:
    path:   /{_lang}/dashboard/logout
    schemes:  [http]
    host:     example.com

loginfailure:
    path:   /{_lang}/login
    schemes:  [https]
    host:     example.hosted-secure.com

我在这里发现了或多或少的类似问题,但没有一个对您有所帮助。

由于 cookie 域限制,它无法工作。您的会话 cookie 保存在客户端浏览器中的域托管-secure.com。如果您将用户重定向到 example.com 上的注销操作,客户端浏览器将不会向服务器发送会话 cookie。 example.com 根本看不到会话 cookie。

如何在 ssl 子域下执行注销操作并在成功注销后重定向到原始 http 域?