扩展会话



我继承了一个php知识库cms,有一个请求,我延长会话,这样用户就不必在一段较长的时间内重新登录,让我们说五天。我发现在登录函数中,我可以通过添加以下代码来扩展cookie最大值/生命周期值。

setcookie(session_name(),$_COOKIE[session_name()],time()+3600*24*5);

我检查了开发者工具中的cookie,它确实延长了生命周期,但用户在几分钟不活动后仍然被重定向到登录。也使用Chromephp扩展,我发现会话变量是空的,当我写会话对象控制台日志刷新登录页面。

我在Ubuntu灯服务器上运行,我在php.ini中检查了几个选项,似乎找不到一个可以延长会话生命周期的选项。另外一个问题是,当多达50个用户使用这个kb时,通过扩展会话会对服务器内存和性能造成什么风险。一如既往地提前感谢,欢迎任何建议。

为什么要设置与会话名称相同的cookie ?这一点用都没有。典型的cookie名称为PHPSESSID

也就是说,仅仅延长cookie过期时间实际上并不能延长会话数据在服务器上的时间。

你需要在你的PHP.ini设置中设置你的会话生存期和会话cookie生存期。查看这个链接到StackOverflow问题,该问题涵盖了如何做到这一点。

如何设置PHP会话30分钟后过期?

最新更新