php中session过期自动删除问题
作者:未知 文章ID:517 浏览:
很多朋友反映,PHP的SESSION老是不过期。比如dedecms的session文件夹,有时候有许多session没有自动删除。我在这里说一下:
在PHP中,找到并打开php.ini。
找到session.gc_maxlifetime = 1440 #(PHP5默认24分)这里你可以随便设置一下过期时间,但是有人说设置以后,不起作用。继续往下看。
其实不是不起作用,而是因为系统默认:
session.gc_probability = 1
session.gc_divisor = 1000
也就是说,garbage collection有个概率的,1/1000就是session 1000次才有一次被回收。只要你的访问量大了,那就能达到回收的效果。要不然你也可以设置一下session.gc_divisor的值。比如:session.gc_divisor = 1,这样就能明显的看到SESSION过期的效果了。
即改成:
session.gc_probability = 1
session.gc_divisor = 1
再试验一下,超期的session记录每次都会删除了。