为了“共享”多个域之间的相同会话,我希望两个会话具有相同的数据库/ memcache密钥。
例如,我希望foo.com和bar.com基本相同。显然,如果用户独立访问这两个域(访问foo.com,登录,然后在bar.com中输入),这是不可能的,但是如果我从一个域重定向到另一个域,这应该是可能的,例如。
bar.com/x重定向到foo.com/y?_cookie_key=abc
foo.com上的一些中间件可以检测到_cookie_key参数,然后使用密钥abc从cookie存储中检索会话,而不是以其他方式执行。中间件将根据该密钥设置当前会话,并将其设置为域/浏览器cookie中的新cookie存储密钥。
虽然这在理论上似乎是可行的,但它看起来也有点毛茸茸,也许需要黑客机架。我希望以前有人这样做,可以提供一些指导或威慑。
答案 0 :(得分:0)
假设您有一个中心域和几个使用相同代码/ db的停放域
我认为你可以检查server_name是否是主域名,如果没有,则有一个中间件脚本, 您通过get vars传递301重定向设置cookie的数据,因此用户被重定向到那里 从那里,重定向回到referrel链接,添加一个get标志来停止重定向循环 (检查主要检查时是否取消设置此标志)
如果所有这些帖子和重定向都通过ajax发生,那么用户永远不会看到任何东西......