LoginSignup
13
16

More than 5 years have passed since last update.

ブラウザを終了してもDeviseのセッションが切れないようにする

Last updated at Posted at 2017-04-02

Deviseで「セッション タイムアウト」とかで検索するとDeviseのtimeoutableを有効にしてinitializersconfig.timeout_inを設定したら良いという記事がたくさん出てきます。

ただこれを設定していても、Railsではデフォルトでセッションクッキー(ブラウザを終了すると消える)設定になっているので、ブラウザを終了してしまうとセッションが切れてしまい困りました。

結論

  • config/initializers/session_store.rbexpire_afterにセッションを維持したい期間を記入してサーバーを再起動すればOKです
Rails.application.config.session_store :cookie_store, key: '_xxxx_session', expire_after: 1.week

Deviseのtimeoutableと同じ期間にしていないとDevise側で強制ログアウトされてしまうと思われる(動作確認はしてない)のでconfig.timeout_inの期間も同じに設定しておきます。

参考にした記事

13
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
16