我试图在Rails 3.2.8中建立一个基于子域的简单博客。基本上,它将具有站点,用户(通过Devise进行身份验证)和成员身份,以将用户连接到站点。我设置了POW,以便myapp.dev正常工作。每个站点都有一个子域,我可以毫无问题地使用该子域导航到site#show操作。我的问题是我无法在各个子域之间共享Devise session 。我的heroku应用程序一切正常,但是我希望能够在本地进行测试。

当我将以下内容添加到session_store.rb时, session 似乎可以跨子域工作,但是随后我无法注销。

Appname::Application.config.session_store :cookie_store, :key => '_appname_session', domain: :all

当我将结尾更改为domain:“。appname.dev”时,它不起作用。

任何帮助将不胜感激!

最佳答案

确保清除cookie并重新启动应用程序。

Appname::Application.config.session_store :cookie_store, :key => '_appname_session', domain: ".appname.dev"
domain: ".appname.dev"是domain选项的正确格式。开始期很重要。

关于session - Rails 3.2.8-与POW共享跨子域的设计 session ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12092893/

10-08 23:18