人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPセッションの有効期限について質問です。
これらの有効期限のカウントがリセットされるのは、「参照」した時なのか「データをセット」した時のどちらなのでしょうか。

例えばセッションの有効期限を3時間にしている場合、初めてアクセスした時に1度セッションにデータがセットされ、その後そのセッションを持ち歩いていただけで新たにセットしなかった場合、3時間後には持ち歩いていたセッションが無効になってしまうのでしょうか。

●質問者: wintarsnow
●カテゴリ:ウェブ制作
✍キーワード:PHP アクセス カウント セッション データ
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● sasada
●50ポイント

標準的な使い方では、有効期限のカウントがリセットされるのは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時間になっているのでそうしようと思っているのですが、もっと短くするのが一般的??

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ