我使用最新版本的PHP和MySQL運行Apache 2.2。PHP會話超時爲0,但會話仍然過期
在我的PHP.ini文件中,我可以看到會話超時設置爲0,這意味着會話保持活動狀態直到瀏覽器關閉。
但是,我注意到,有時候在早上進來,並且讓瀏覽器打開並在一夜之間登錄,會話似乎已經過期。
是否有任何其他配置設置會導致會話過期?我只是想玩弄價值,看看什麼樣的時間最適合我的網站。
非常感謝
編
我使用最新版本的PHP和MySQL運行Apache 2.2。PHP會話超時爲0,但會話仍然過期
在我的PHP.ini文件中,我可以看到會話超時設置爲0,這意味着會話保持活動狀態直到瀏覽器關閉。
但是,我注意到,有時候在早上進來,並且讓瀏覽器打開並在一夜之間登錄,會話似乎已經過期。
是否有任何其他配置設置會導致會話過期?我只是想玩弄價值,看看什麼樣的時間最適合我的網站。
非常感謝
編
你可以試試:
http://in2.php.net/manual/en/session.configuration.php#ini.session.gc-maxlifetime
你可以把這個在你的PHP文件,第二個參數是之後的數據將被視爲秒數'垃圾'並可能被清理乾淨。 :
ini_set('session.gc_maxlifetime', 30*60);
希望得到這個幫助!
編輯:
是的,我要指出,感謝您指出。
正如威廉
建議「調用該函數的在session_start()之前進行; - 威廉」
例子:
<?php
ini_set('session.gc_maxlifetime', 30*60);
session_start();
?>
你應該看一看接受回答這個問題:http://stackoverflow.com/questions/520237/how-do-i-expire-a-php-session-after-30-minutes它可能會有所幫助。 – Willem 2012-07-31 12:04:26