redis_store会话未到期

时间:2014-01-03 15:37:32

标签: ruby-on-rails redis

我正在使用gem redis商店进行我的rails会话。

我的config / initializers / session_store.rb

MYAPP::Application.config.session_store :redis_store, key: '_my_app_session',
  :servers =>{
    :host => ENV["REDIS_HOST"],
    :port => ENV["REDIS_PORT"],
    :namespace => "MYAPP::WEB",
    :expires_in => 20.minutes
  }

即使我的session_store.rb中有expires_in 20.minutes,我的会话也没有在我的redis服务器中清除。

我应该进行任何额外配置吗?

1 个答案:

答案 0 :(得分:2)

这是一个非常简单的修复。

我在:servers块中使用了:expires_in => 20.minutes。它应该在:servers块之外。所以我做了这样的配置

MyAPP::Application.config.session_store :redis_store, key: '_my_app_session',
  :servers =>{
    :host => ENV["REDIS_HOST"],
    :port => ENV["REDIS_PORT"],
    :namespace => "MYAPP::WEB"
  },
  :expires_in => 20.minutes

现在它完美无缺。