purazumakoiの[はてなブログ]

技術メモから最近はライフログも増えてきてます。

FuelPHPでセッションが効かないのはサーバの時刻の問題

FuelPHPでSessionをsetしても次画面で消えてしまう問題(原因はドジだった) - 等身大シンドローム

FirefoxWeb Developerで確認してみた

こんな感じでクッキーの有効期限がきれてるからかな?
f:id:purazumakoi:20131009012141p:plain

サーバ時刻が現在かな?

$ date

#JSTなのでok
2013年 10月  9日 水曜日 02:33:30 JST

サーバのphp.iniのタイムゾーン設定をFuelPHPと合わせた

vi /etc/php5/apache2/php.ini

以下部分設定

date.timezone = Asia/Tokyo

Apache再起動

sudo /etc/init.d/apache2 restart


それでもクッキーの有効期限が過去になっちゃう(時刻設定のどこかに不備があるはずだが)
とりあえず
fuel/core/config/session.php

fuel/app/config/session.php
にコピーして編集

#有効期限を2時間から10時間にする
// 'expiration_time'	=> 7200,
'expiration_time'	=> 36000,

だめか。。有効期限をブラウザが閉じるまで

'expire_on_close'	=> true,

んー。やっぱりセッション保持されない。なんでだろう

追記
/fuel/app/config/session.php

'driver'			=> 'cookie',

'driver'			=> 'file',

にしたらいけた。