2

我在http://asciicasts.com/episodes/221-subdomains-in-rails-3关注了 ascii

我已将 :domain 选项设置为 :all 在会话存储中:

Rails.application.config.session_store :cookie_store, :key => '_bloggit_session', :domain => :all

现在我的用户无法注销。

任何想法为什么?我试过删除所有 cookie,然后再试一次,等等。

我可以登录,并且我的会话跨子域进行,但我无法注销。

我正在使用 rails 3 和 authlogic 进行身份验证。

谢谢你的帮助!

4

1 回答 1

1

指定域。

我有完全相同的问题,罪魁祸首正在使用:domain => :all.

你会认为这就是你所需要的,但它似乎会导致一些问题,所以我不得不手动指定带有前面点 ( .) 的域,如下所示:

:domain => '.lvh.me'

这解决了开发中的问题。您可以在各种环境中使用不同的方法来设置它,但我遇到了这样的事情:

Rails.application.config.session_store :cookie_store, 
  :key => '_bloggit_session',
  :domain => { production:  '.bloggit.com',
               staging:     '.bloggitstaging.com',
               development: '.lvh.me' }.fetch(Rails.env.to_sym)
于 2016-01-21T23:43:02.103 回答