I have an issue, my apps sessions are expiring unexpectedly after about 15 minutes. I need them to expire after 4 hours.
The server is Centos 5.5, PHP is 5.3.2.
Below is my code (included in an global header).
<?php session_name('MobileSuiteHQ'); if(!session_id()) { session_start(); } ini_set('memory_limit', '512M'); ini_set('session.gc_maxlifetime', 14400000); ini_set('session.cookie_lifetime', 14400000); ini_set('session.gc_divisor', 1000); ini_set('session.use_cookies', 0); ini_set('max_execution_time', 300); ini_set('session.name','MobileSuiteHQ'); ?>
My .htaccess file contains:
php_value session.gc_maxlifetime 14400000 php_value session.cookie_lifetime 14400000 php_value session.use_cookies 0 php_value session.gc_divisor 1000
Any help or insight would be greatful.
EDIT: I was unable to login when i updated my .htaccess file, the session wasn’t starting. So I have now removed:
php_value session.use_cookies 0
which now allows me to login.
Advertisement
Answer
On initial examination, I’d lower your gc_maxlifetime and cookie_lifetime settings. I suspect that 14400000 is a little high for PHP to cope with (in theory, a 32-bit OS should be able to go up to 2147483647, but this could still be a factor).
If you only need 4 hours of lifetime, then 14400 would be a perfect setting, and may resolve your problem for the reason mentioned above.