Zend \ Session \ SessionManager y cookie_lifetime
Estoy viendo algún comportamiento extraño y frustrante con las sesiones de ZF2 y los tiempos de espera.
Aquí está el código que utilizo para configurar la sesión:
$sessionConfig = new \Zend\Session\Config\StandardConfig();
$sessionConfig->setOptions(array(
'cache_expire' => 525949,
'cookie_domain' => 'mydomain.com',
'cookie_lifetime' => 31536000,
'cookie_path' => '/',
'cookie_secure' => TRUE,
'gc_maxlifetime' => 31536000,
'name' => 'mydomain',
'remember_me_seconds' => 31536000,
'use_cookies' => TRUE,
));
$sessionManager = new \Zend\Session\SessionManager($sessionConfig);
$sessionManager->rememberMe(31536000);
$sessionManager->setSaveHandler(new \Zend\Session\SaveHandler\MongoDB($mongo, $options);
$session = new \Zend\Session\Container('MY_SESSION', $sessionManager);
Cuando ejecuto este código, la cookie se crea pero la caducidad es el final de la sesión.
Si cambio el código así:
$sessionManager = new \Zend\Session\SessionManager();
$sessionManager->rememberMe(31536000);
$sessionManager->setConfig($sessionConfig);
$session = new \Zend\Session\Container('MY_SESSION', $sessionManager);
La cookie se crea y el vencimiento es de un año a partir de ahora.
Sin embargo, la sesión aún expira después de 30 minutos más o menos, aunque la cookie permanezca.
Lo que quiero es que la cookie y la sesión persistan durante un año. ¿Cómo logro esto en ZF2?