これらの有効期限のカウントがリセットされるのは、「参照」した時なのか「データをセット」した時のどちらなのでしょうか。
例えばセッションの有効期限を3時間にしている場合、初めてアクセスした時に1度セッションにデータがセットされ、その後そのセッションを持ち歩いていただけで新たにセットしなかった場合、3時間後には持ち歩いていたセッションが無効になってしまうのでしょうか。
標準的な使い方では、有効期限のカウントがリセットされるのはsession_start()が評価されたときです。
セッションを持ち歩いている場合、(インターバルが有効期限以内なら)タイムアウトしません。3時間は長すぎだとは思いますが・・・(^^;
もっとも、httpのキャッシュを有効にしている場合は、同一URLを巡回している間に期限切れになる可能性があります。(phpは、デフォルトではキャッシュしない設定になってます)
http://php.s3.to/man/function.session-cache-limiter.html
session_cache_limiter
http://php.s3.to/man/function.session-cache-expire.html
session_cache_expire
回答ありがとうございます!
>カウントがリセットされるのはsession_start()が評価されたとき
了解です。
私の調べ方が悪いのか、こういう情報は見つからなくて(あまりにも基本的なことということなのかしら…)、悩んでおりました。助かりました。
ちなみにsession.cache-limiterはnocacheにしております。
ところで
>3時間は長すぎ
というのは、「3時間もインターバルが空くのは長すぎ」という意味ですね? それとも「3時間に設定しているのは長すぎ」の意味でしょうか。一応デフォルトが3時間になっているのでそうしようと思っているのですが、もっと短くするのが一般的??