Zend Session destroyed if page requested too quickly

My application is not built on the MVC pattern, but partially uses the components of the Zend Framework, such as Config, Loader, Session, Auth, Service and XmlRpc.

I recently discovered that in some cases, if a user moves too fast through pages or clicks too quickly F5, his session will be destroyed and he will be logged out. There is a similar question , but its solution did not help me solve this problem.

How the application works

Session Configuration:

cookie_domain = ".mydomain.com"
name = "myApplicationName"
remember_me_seconds = 864000
save_path = "/path/to/my/session/storage/"
save_handler = "files"
strict = true
use_only_cookies = true

Page initialization:

$config = new Zend_Config_Ini(CONFIG_DIR . 'session.ini');

Zend_Session::setOptions($config->toArray());

Zend_Session::start();

Account controller:

function __construct(...)
{
    /**
     * @var $session Zend_Session_Namespace
     */
    $session = Zend_Registry::get('Zend_Auth');

    if(isset($session->identity))
    {
        Zend_Session::rememberMe();
    }
}

Sign Out:

if(isset($_GET['logout']))
{
    Zend_Session::destroy(TRUE);
}

Has anyone else experienced this problem and determined what might be wrong and how to fix it?

Update

Zend_Session::rememberMe(), . , session_id , - / , - .
, ?

+5
2

raw PHP. , session_regenerate_id() ( HTTP-).

, - ( Zend - ) . , HTTP-, , , , PHP.

+2

. : a) , - , ; b) , .

: Zend_Session , .

0

All Articles