PHPのセッションについて②
Posted: 2012年7月26日(木) 17:52
PHPではサーバに保存されてるセッションデータはガベージコレクタによって削除されるということがわかりました。
そのタイミングはセッションの開始時であるということも。
この削除の流れというのは、
ユーザがサイトにアクセス
↓
ブラウザのPHPSESSIDのCOOKIEをチェック
↓
そのCOOKIEがあれば、
サーバにある該当のセッションデータの有効期限を調べる
↓
有効期限が切れてたらサーバのセッションデータ削除
という流れで合ってますでしょうか?
この流れで行けば問題なくセッションデータは削除されると思うのですが、
もしPHPSESSIDのクッキーを削除していた場合、サーバにあるセッションデータはどのタイミングで削除されるのでしょうか?
実際にPHPSESSIDのクッキーを削除してアクセスしてみると、
新しいセッションIDが割り振られ、古いセッションデータは有効期限を過ぎても残ったままでした。
このような場合はcronとかでチェックして、古いセッションデータを削除するしか方法はないのでしょうか?
よろしくお願い致します。
そのタイミングはセッションの開始時であるということも。
この削除の流れというのは、
ユーザがサイトにアクセス
↓
ブラウザのPHPSESSIDのCOOKIEをチェック
↓
そのCOOKIEがあれば、
サーバにある該当のセッションデータの有効期限を調べる
↓
有効期限が切れてたらサーバのセッションデータ削除
という流れで合ってますでしょうか?
この流れで行けば問題なくセッションデータは削除されると思うのですが、
もしPHPSESSIDのクッキーを削除していた場合、サーバにあるセッションデータはどのタイミングで削除されるのでしょうか?
実際にPHPSESSIDのクッキーを削除してアクセスしてみると、
新しいセッションIDが割り振られ、古いセッションデータは有効期限を過ぎても残ったままでした。
このような場合はcronとかでチェックして、古いセッションデータを削除するしか方法はないのでしょうか?
よろしくお願い致します。