设置PHPRedis会话过期

时间:2016-09-14 17:42:50

标签: php session redis phpredis

我已经让Redis为我通过PHPRedis访问的几个子域运行共享会话存储。会话cookie的使用寿命很长,因此用户不必经常登录,但我发现无论如何我必须每半小时登录一次。

检查Redis实例显示默认情况下每个键的TTL设置得非常低(大约1500秒)。 PHPRedis文档有这样说:

  

会话的生命周期以秒表示,并存储在INI变量" session.gc_maxlifetime"中。您可以使用ini_set()更改它。

目前还不清楚这是指Cookie生命周期还是Redis密钥的TTL。我将session.cookie_lifetimesession.gc_maxlifetime设置为100000秒以运行测试,但看起来新的会话条目仍然以Redis中的1500秒TTL开始。

在与Redis直接交互时如何设置TTL非常清楚,但我不知道如何通过PHPRedis设置此值。会议经理。有什么提示吗?

1 个答案:

答案 0 :(得分:2)

kiss-web是正确的,无论出于何种原因ini_set('session.gc_maxlifetime', 100000);无法正常工作,但改变php.ini中的设置就可以了。