我有一个带有authlogic身份验证的rails应用和一个用subdomain-fu构建的username.domain.com结构。
但是在从domain.com转到username.domain.com时,我的会话中断了。我试着添加
config.action_controller.session = {:domain => '.localhost:3000'}到我的development.rb,但这似乎打破了身份验证逻辑,禁用了注销/登录。
有什么建议吗?
提前感谢!
发布于 2010-03-14 06:31:45
您在开发模式下会遇到此问题,但在prod模式下可能不会出现此问题。您正在尝试设置顶级cookie。你的浏览器不会让你这么做的。你想要做什么?
config.action_controller.session = {:domain => '.localhost:3000'}无异于说
config.action_controller.session = {:domain => '.com'}尝试创建自定义本地域,如localhost.localdomain或dummylocal.com等,这将使其正常工作。
config.action_controller.session = {:domain => 'localhost.localdomain'}
config.action_controller.session = {:domain => 'dummylocal.com'}发布于 2012-11-15 07:02:02
对于Rails3,上面的代码将引发NoMethodError
undefined method `session=' for ActionController::Base:Class因此,对于Rails3,您不应该更改您的环境配置,而应该将您的app/config/initializers/session_store.rb设置为:
YourAppName::Application.config.session_store :active_record_store,
{:key => '_your_namespace_session', :domain => '.yourdomain.com'}发布于 2010-04-21 10:51:06
也许这能帮上忙:http://erikonrails.snowedin.net/?p=248?
https://stackoverflow.com/questions/2438553
复制相似问题