繁体   English   中英

如何使用户在一定时间后不注销(PHP / APACHE)

[英]How to make users not be logged out after certain time (PHP/APACHE)

我已经在php.in文件中进行了这些调整,然后停止/启动了服务器:

; 24 hour session cookie
session.cookie_lifetime = 86400

; Prevent server from cleaning up session
; Some value higher than the cookie lifetime
session.gc_maxlifetime = 200000 

但这似乎无济于事,我的用户仍在抱怨他们大约30分钟后就注销了。 而且我也经常注销。

为了使已登录的用户不被注销并使他们保持至少24小时或更长时间的登录状态,我还能采取什么其他措施或做些什么。

谢谢!

您可以使用类似于以下的代码来增加会话超时:(在.htaccess中,如果您使用的是Apache)

php_value session.gc_maxlifetime 86400
php_value session.gc_probability 1
php_value session.gc_divisor 100

问题是您的会话文件夹中可能会充满不活动的会话文件。 我们的网站使用半小时的超时时间,但是作为管理界面的一部分,我们有一个AJAX轮询器,可以使会话每15分钟保持一次活动。 这样,我们仅使会话对活动用户开放(即使他们执行长期操作)

另外,您可以考虑存储一个单独的-长期-Cookie,该Cookie可以在过期后用于快速重新建立用户会话,这又避免了用繁琐的会话文件填充服务器的需要。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM