したがって、この質問の核心は、一定期間の非アクティブ後にのみ CakePHP がセッションの認証を解除するのを防ぐ方法ということです。
したがって、ユーザーが何もしない場合は、30 分後に CakePHP がユーザーをログアウトすることを期待します。ただし、ユーザーが 28 分間の非アクティブ状態でページにアクセスすることを選択した場合、CakePHP はタイムアウト カウンターを「リセット」する必要があります。
現時点では、これは発生していません。アクティビティに関係なく、CakePHP はコア設定 (app/Config/core.php) で指定された時間後にタイムアウトします。
これが私の設定コードです:
Configure::write('Session', array(
'defaults' => 'cake',
'timeout' => '30'
));
何か案は?
ベストアンサー1
同じ問題に遭遇した後、これは Session.cookieTimeout 値によって発生していることがわかりました。PHP セッションは有効のままですが、セッション クッキーの有効期限は更新されません。
これが私のセッション設定です
Configure::write('Session', array(
'defaults' => 'php',
'timeout' => 30, // The session will timeout after 30 minutes of inactivity
'cookieTimeout' => 1440, // The session cookie will live for at most 24 hours, this does not effect session timeouts
'checkAgent' => false,
'autoRegenerate' => true, // causes the session expiration time to reset on each page load
));