CentOS release 6.9 (Final). Just upgraded from PHP 5.4 to 5.6. Environment information:
$ sudo yum list installed php*
[sudo] password:
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
epel/metalink | 12 kB 00:00
* base: mirror.cc.columbia.edu
* epel: archive.linux.duke.edu
* extras: centos-distro.1gservers.com
* updates: centos.chicago.waneq.com
* webtatic: sp.repo.webtatic.com
base | 3.7 kB 00:00
docker-ce-stable | 2.9 kB 00:00
epel | 4.3 kB 00:00
epel/primary_db | 5.9 MB 00:00
extras | 3.4 kB 00:00
mongodb | 951 B 00:00
pgdg96 | 4.1 kB 00:00
updates | 3.4 kB 00:00
webtatic | 3.6 kB 00:00
Installed Packages
php56w.x86_64 5.6.30-1.w6 @webtatic
php56w-cli.x86_64 5.6.30-1.w6 @webtatic
php56w-common.x86_64 5.6.30-1.w6 @webtatic
php56w-devel.x86_64 5.6.30-1.w6 @webtatic
php56w-ldap.x86_64 5.6.30-1.w6 @webtatic
php56w-mysql.x86_64 5.6.30-1.w6 @webtatic
php56w-pdo.x86_64 5.6.30-1.w6 @webtatic
php56w-xml.x86_64 5.6.30-1.w6 @webtatic
from phpinfo():
Author Phalcon Team and contributors Version 2.0.13 Build Date Jul 7 2017 15:11:14 Powered by Zephir Version 0.9.2a-dev
As of upgrading, my users were complaining that my application is kicking them out and forcing them to login again for no reason. Looking in /var/log/httpd/ssl_error_log I see lots of these:
[Fri Jul 07 16:18:00 2017] [error] [client 156.111.60.215] PHP Warning: session_start(): Failed to decode session object. Session has been destroyed in /var/www/html/dbsr/app/config/services.php on line 93, referer: https://xxx.xxx.xxx.com/dbsr/
From app/config/services.php:
/**
* Start the session the first time some component request the session service
*/
$di->set('session', function () {
$session = new SessionAdapter();
if(!$session->isStarted()){
$session->start();
}
return $session;
});
Nothing in the code base changed. I am running linux on my laptop and cannot replicate this problem but many users on windows are reporting it and I see those errors in the log corresponding to when they complain about losing the session.
Help!