ちょうど調査する必要があったため、備忘録として。
CakePHPのセッション系の設定は、2系から
Configure::write('Session', array( 'defaults' => 'php' ));
みたいに設定するようになったんだけど、
そこのtimeoutに設定される初期値がわからなかったので調べてみた。
とりあえず対象の記述は/lib/Cake/Model/Datasource/CakeSession.phpの_defaultConfig関数にある。
CakePHPでセッションを利用する場合以下の4タイプがあるわけだけど、
- 「php」:session_save_pathで用意されたディレクトリ以下に溜める
- 「cake」:アプリケーション内のapp/tmp/sessions配下にファイルで溜める
- 「cache」:別で設定したキャッシュに溜める
- 「database」:データベースに貯める
それぞれのセッションで利用するCookieの初期値は(Session.timeout)240分だった。
ちなみにこの内容を修正する場合は以下のように変更する
Configure::write('Session', array( 'defaults' => 'php', 'timeout' => 30 ));
※timeoutに設定する値は秒単位ではなく分単位