我有我的environment.rb未來配置:的Rails 2.3.14爲會話設置expire_after被忽略
config.action_controller.session_store = :cookie_store
config.action_controller.session = {
:expire_after => 14.days,
:domain => DOMAIN,
:session_key => '_session',
:secret => 'some_string'
}
設置session_store到active_record_store或mem_cache_store沒有幫助。 此外,我已經試過只設置從控制器的cookie(與過期的所有選項創辦):
cookies[:test] = { :value => 'test' , :expires => 3600.to_i.from_now.utc }
在這兩個方面的所有會話和餅乾關閉瀏覽器窗口後刪除 - 他們只對瀏覽器會話。 我已經試過幾乎所有變體成立於互聯網 - 沒有運氣(
我的配置是:Ubuntu的10.04 LTS,軌道2.3.14,Ruby企業版1.8.7,乘客的Phusion版本3.0.11和Nginx是由編譯客運的Phusion。
我一直認爲它是Nginx的不允許設置一些信息,但是還沒有找到任何解決方案的選項。
任何幫助表示讚賞!謝謝
UPD。 我試着把會話的所有配置設置爲config/initializers/session_store.rb - 沒有cha nged。 我有一種感覺,這不是軌道的問題。可能是phusion + nginx錯誤? 我甚至不知道如何檢查哪裏出了問題。
我已經嘗試過這種變體還。沒有運氣 - 關閉瀏覽器窗口 –
HI @sailor我用這個在我的Rails3中的代碼,但會議結束後到期它將給出零誤差USER_ID到期後,是他們的任何方式來重定向用戶登錄上刷新頁面 – Ravindra
對我來說,這部作品在軌2.3.18。這可能很明顯,但您必須在初始化程序中更改某些內容後重新啓動服務器。此外,在鍍鉻您可以輕鬆地檢查一個cookie的'到期/ MAX-age'(在資源選項卡)。 – nathanvda