修改 php.ini 配置
sudo vim /etc/php/7.0/fpm/php.ini
# 第 1423 行, Session数据在服务器端储存的时间,设为一个月
session.gc_maxlifetime = 2592000
# SessionID在客户端Cookie储存的时间,默认是0,代表浏览器一关闭SessionID就作废
session.cookie_lifetime = 2592000
# garbage collection 有个概率的,1/1000就是session 1000次才有一次被回收。
# 设置 session.gc_divisor = 1, 这样就能明显的看到SESSION过期的效果了
session.gc_probability = 1
session.gc_divisor = 1000
其他数字
31536000 = 365天
2592000 = 30天
604800 = 7天
86400 = 1天
PHP中的session永不过期
session.use_cookies
把这个的值设置为1,利用cookie来传递sessionid
session.cookie_lifetime
这个代表SessionID在客户端Cookie储存的时间,默认是0,代表浏览器一关闭SessionID就作废……就是因为这个所以PHP的 session不能永久使用! 那么我们把它设置为一个我们认为很大的数字吧,999999999怎么样,可以的!就这样。
session.gc_maxlifetime = 31536000
这个是Session数据在服务器端储存的时间,如果超过这个时间,那么Session数据就自动删除! 那么我们也把它设置为99999999。
就这样一切ok了,当然你不相信的话就测试一下看看――设置一个session值过个10天半个月的回来看看,如果你的电脑没有断电或者宕机,你仍然可以看见这个sessionid。