【发布时间】:2012-06-03 09:10:44
【问题描述】:
在我的 Cake 2 应用程序中,我在 APP/Config/core.php 中有以下代码:
Configure::write('Session', array(
'defaults' => 'database',
'cookie' => 'mycookie',
'timeout' => 4320 //3 days
));
这主要按预期工作。会话存储在数据库中,cookie命名正确,3天后cookie被删除。
上面的例子是从http://book.cakephp.org/2.0/en/development/sessions.html#built-in-session-handlers-configuration得到的
不幸的是,这并不是我想要的。我希望 cookie 在 3 天后被删除,但我希望它是在用户最后一次在网站上处于活动状态后 3 天。换句话说:
1) 用户周一访问网站,cookie 设置为周三到期。不过,他周二回来,所以现在 cookie 将在周四到期。
2) 用户周一访问网站,直到周四才再次访问,因此必须生成新的 cookie。
起初我认为可能是添加Session.autoRegenerate 的问题,但这似乎没有任何帮助。即使使用此设置,即使用户在整个 3 天期间都在网站上处于活动状态,cookie 似乎仍然会在 3 天后被删除。
【问题讨论】:
标签: cakephp