【问题标题】:CakePHP 3 display time of session timeout based on session configurationCakePHP 3 基于会话配置显示会话超时时间
【发布时间】:2019-10-10 10:49:48
【问题描述】:

这是我在 app.php (CakePHP 3) 中的会话设置

'Session' => [
    'cookie' => 'name',  
    'defaults' => 'database',    
    'timeout'=>'20',         
    'handler' => [         
        'engine' => 'DatabaseSession',
        'model' => 'A0'
     ]

],

打印会话结束的当前时间:

echo $this->request->session()->read('Config.time');

向我展示了一个巨大的数字,例如1570704344

我已将超时设置为 20 分钟。是我的设置有误还是我显示的超时时间不正确?

【问题讨论】:

  • 看来您没有正确配置会话。您可以使用 chrome 开发者模式查看您网站的会话过期值。

标签: cakephp


【解决方案1】:

1570704344 是一个时间戳。

来自 CakePHP 文档:

请注意,php.ini 的 session.gc_maxlifetime 必须等于或大于所有服务网站中最大的 Session['timeout'] 才能达到预期效果。

并读取设置:

\Cake\Core\Configure::read('Session.timeout')

【讨论】:

  • echo \Cake\Core\Configure::read('Session.timeout');给我看“20”。我还是不明白怎么回事
  • 有什么问题?会话不会在 20 分钟后超时吗?
  • 我现在正在尝试仔细检查它,因为我感觉它会提前好几次过期。我现在正在尝试测量它。
猜你喜欢
  • 2018-08-10
  • 2013-12-19
  • 1970-01-01
  • 2014-06-21
  • 1970-01-01
  • 2018-06-05
  • 1970-01-01
  • 1970-01-01
  • 2011-05-09
相关资源
最近更新 更多