Zend \ Session \ SessionManager и cookie_lifetime

Я вижу странное и разочаровывающее поведение с сессиями и тайм-аутами ZF2.

Вот код, который я использую для настройки сеанса:

    $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);

Когда я выполняю этот код, файл cookie создается, но срок его действия - конец сеанса.

Если я изменю код следующим образом:

    $sessionManager = new \Zend\Session\SessionManager();
    $sessionManager->rememberMe(31536000);
    $sessionManager->setConfig($sessionConfig);
    $session = new \Zend\Session\Container('MY_SESSION', $sessionManager);

файл cookie создается, и срок его действия составляет год.

Тем не менее, сеанс все еще истекает через 30 минут или около того, даже если cookie сохраняется.

Я хочу, чтобы и cookie, и сеанс сохранялись в течение года. Как мне сделать это в ZF2?

Ответы на вопрос(1)

Ваш ответ на вопрос