Zend framework2 会话管理器超时/注销

Zend framework2 会话管理器超时/注销,zend-framework2,Zend Framework2,我目前正在使用这里的示例 在我的autoload/global.php文件中,我有以下内容: 'session' => array( 'config' => array( 'class' => 'Zend\Session\Config\SessionConfig', 'options' => array( 'name' => 'otwebsoft

我目前正在使用这里的示例

在我的autoload/global.php文件中,我有以下内容:

'session'         => array(
    'config'     => array(
        'class'   => 'Zend\Session\Config\SessionConfig',
        'options' => array(
            'name'                => 'otwebsoft',
            'save_path'           => __DIR__ . '/../../data/session',
            'use_cookies'         => true,
            'cookie_lifetime'     => 3600,
            'cookie_httponly'     => true,
            'cookie_secure'       => false,
            'remember_me_seconds' => 1800
        )
    ),
    'storage'    => 'Zend\Session\Storage\SessionArrayStorage',
    'validators' => array(
        array(
            'Zend\Session\Validator\RemoteAddr',
            'Zend\Session\Validator\HttpUserAgent'
        )
    )
)
我喜欢会话在X时间段后过期的方式,如果用户登录,在页面刷新时,用户将自动注销,并且必须再次登录。但是,我希望这样,如果用户继续浏览该站点,在X个时间段后,会话不会被终止,但可能只是重新生成或进行其他操作,这样他们就不会被迫再次登录

我只是不确定这两种情况如何或是否都可能发生。如果这是不可能的,我可以提高会话生存期的X时间,并接受它


有人有什么想法我可以试试吗?

将cookie lifetime设置为0:

'cookie_lifetime'     => 0
它将告诉浏览器只有在浏览器关闭后才能终止cookie

并定义服务器会话存储生存期:

'gc_maxlifetime' => 3600
因此,在1小时不活动后,会话存储将被清理