Yii 設定ファイルの関連部分を以下に示します。
return array(
...
'components'=>array(
'session' => array(
'timeout' => 86400,
),
'user'=>array(
'allowAutoLogin' => true,
'autoRenewCookie' => true,
'authTimeout' => 31557600,
),
...
),
...
);
私もphp.iniに入って設定しsession.gc_maxlifetime = 86400
ましたが、それでも問題は解決していません。
現在、約 15 ~ 30 分の非アクティブ状態の後に、他に何が原因でタイムアウトになり、ユーザーがログアウトされるのか、私は完全に途方に暮れています。理想的には、ユーザーは、少なくとも 1 日の非アクティブな状態でログインしたままにする必要があります (ブラウザーの設定が許す限り、ブラウザー ウィンドウを閉じた後も)。
私はグーグル、Yii、およびスタックオーバーフローをトロールしましたが、見落としているものは何も見つかりません...しかし、明らかに何かを見落としています。誰かが私を助けることができれば、私はとても感謝しています.
ユーザーのログインに使用している典型的なコードのサンプルがリクエストされ、以下に含まれています。
$identity = new UserIdentity('facebook', $id, $user->name, $user->email);
$loggedIn = Yii::app()->user->login($identity);
$this->subscriptionChecker->updateCurrentUserSubscribed();
Yii::app()->user->login()
これは、呼び出されたときの典型的なものです。
Chrome から、サイト用に保持している Cookie とその有効期限を以下に示します (すべての Cookie を消去してログインした後):
PHPSESSID expires When the browsing session ends
// I'm informed these are set by google analytics
__utma created Friday, 12 October 2012 14:05:31 expires Sunday, 12 October 2014 14:05:31
__utmb created Friday 12 October 2012 14:05:31 expires Friday 12 October 2012 14:35:31,
__utmc created Friday, 12 October 2012 14:05:31 expires When the browsing session ends
__utmz created Friday 12 October 2012 14:05:31 expires Saturday 13 April 2013 02:05:31
// end google analytics