【发布时间】:2011-07-10 02:08:02
【问题描述】:
我目前有基于 cookie 的会话。我正在尝试允许使用同一会话访问我系统上的所有子域,因此用户只需登录一次并被授予通过我的站点(section1.mysite.com、section2.mysite.com 等)的访问权限。
我已经像这样更新了我的 config/initializers/session_store.rb:
Mysite::Application.config.session_store :cookie_store, :key => '_mysite_session', :domain => :all
#Mysite::Application.config.session_store :cookie_store, :key => '_mysite_session'
注释掉的行显示了我之前的内容。现在,如果我在重新启动服务器时注销(没有保存 cookie 会话),这非常有用。但是,如果我有一个用于第一个配置的 cookie 会话,当我切换到 :domain => all 时,我无法销毁该会话。用户无限期登录,因为会话不会破坏。用户无法从已注释掉的会话配置上登录的会话中注销,并且一旦新配置到位,他们就会尝试注销。
我尝试过的事情: * 更改 security_token 似乎没有帮助 * 更改 session_store 密钥似乎没有帮助(我对此感到困惑......我认为它应该可以工作) * 对于我的一生,我不知道如何手动删除会话
无论我做什么,在我进行此更改之前登录的任何人都无法在我执行此更改后退出。
提前感谢您的帮助! 本
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 session logout session-cookies