Session cakephp会话超时不工作

Session cakephp会话超时不工作,session,cakephp,timeout,Session,Cakephp,Timeout,我有一个cakephp站点,我遇到了一个问题,在空闲了大约>=1小时后,它会自动注销 因此,我在谷歌上搜索延长超时时间,并在core.php Configure::write('Session', array( 'defaults' => 'php', 'timeout' => 28800, // 8 hours. ) ); 我想让已登录的用户即使在空闲时间少于8小时后仍能登录 但这不起作用 如何解决这个问题?根据

我有一个cakephp站点,我遇到了一个问题,在空闲了大约>=1小时后,它会自动注销
因此,我在谷歌上搜索延长超时时间,并在
core.php

    Configure::write('Session', array(
        'defaults' => 'php',
        'timeout'  => 28800,  // 8 hours.
        )
    );
我想让已登录的用户即使在空闲时间少于8小时后仍能登录
但这不起作用

如何解决这个问题?

根据CakePHP手册,Session.timeout选项的单位是“分钟”,因此8小时应该是60*8=480

关于设置不起作用,我认为您可以尝试清理cakePHP缓存文件/重新启动web服务器,或者将调试级别更改为2以进行故障排除


您可能正在使用CakePHP 3,这就是您面临此问题的原因。会话超时在CakePHP 3中不起作用,您可能使用cookie_生存期,请检查

我在CakePHP 1.3中遇到了相同的问题

问题是CakePHP使用的是php.ini中定义的设置,而不是我在core.php中定义的设置

因此,我不得不在core.php中进行更改:

Configure::write('Session.save', 'php');


它就像一个符咒

您可以使用cookie来保存和检索用户的详细信息。我这样做了,但大约30分钟后仍将我注销。您是否检查了php.ini session.gc-maxlife参数?如果您使用的是默认php会话,我想知道cakephp是否可以覆盖php.ini设置。php清理会话文件的默认值是1440秒,大约24分钟。可能会通过指导OP on
cookie\u life
使用来改进您的答案。这将增加cookie过期时间,而不是会话超时时间。。。
Configure::write('Session.save', 'cake');