如何将会话生命周期设置为无限?有一个设置session.cookie_lifetime
,但我无法找到设置无限生命周期所需的值。我试过0但是一旦浏览器关闭它就会过期。
ini_set('session.cookie_lifetime', 0);
答案 0 :(得分:5)
也许您可以尝试将到期时间设置为非常大的值? :)
根据我对这个主题的看法,你需要的不仅仅是你在问题中所写的那一行,如下所示:
//set cookie lifetime for 100 days (60sec * 60mins * 24hours * 100days)
ini_set('session.cookie_lifetime', 60 * 60 * 24 * 100);
ini_set('session.gc_maxlifetime', 60 * 60 * 24 * 100);
//maybe you want to precise the save path as well
ini_set('session.save_path', '/home/yoursite/sessions');
//then start the session
session_start();
祝你好运!
答案 1 :(得分:1)
在manual中说:
值0表示"直到浏览器关闭。"默认为0.
答案 2 :(得分:0)
session.gc_maxlifetime
是控制服务器会话中存储的数据保持有效时间的值($_SESSION
字典是您访问数据的方式。)值session.cookie_lifetime
控制如何只要浏览器Cookie中的数据有效(值0表示“直到关闭浏览器”)。
由于最初的问题是关于如何使会话无限有效的,所以确切的答案是将session.gc_probability
值更改为0,这意味着垃圾回收器将永不被调用。 (当然,请确保这是您真正想要做的。)
这些值也可以在php.ini中设置。
session.gc_probability reference
希望这会有所帮助。