Home > CakePHP | PHP > [CakePHP 1.2.1] ブラウザを閉じてもセッションが消えない

[CakePHP 1.2.1] ブラウザを閉じてもセッションが消えない

  • Posted by: エガシラリュウジ
  • 2009年3月31日 19:32
  • CakePHP | PHP

久しぶりの Cakeネタ。

通常、認証機能などで、Session を利用した場合、ブラウザを閉じると保持していた Session 情報は消える。

これは、php.ini の session.cookie_lifetime に「0」を設定した場合の挙動だが、 CakePHP で、認証機能を実装した場合、session.cookie_lifetime を「0」に設定していてもセッションが消えない場合がある。

調べてみると、どうやら app/config/core.php で、Security.level の値を high 以外を設定した場合、 Sessionクラスで session.cookie_lifetime が上書きされてしまう様子。 

知らんかった。。この余計?な機能のお陰で、月末のクソ忙しい時に半日潰したよ。


という事で、ブラウザを閉じた際にセッション情報を消して欲しい場合は、Security.level を high に!

ただ、high に設定した場合、セッションのタイムアウトまでが極端に短いので、Session.timeout で調整が必要っす。

Comments:0

コメントフォーム

コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。

Trackbacks:0

TrackBack URL for this entry
http://blog.non-style.com/mt/mt-tb.cgi/59
Listed below are links to weblogs that reference
[CakePHP 1.2.1] ブラウザを閉じてもセッションが消えない from Webプログラマの苦悩

Home > CakePHP | PHP > [CakePHP 1.2.1] ブラウザを閉じてもセッションが消えない

Links
Search
Feeds
Tag Cloud

Return to page top