我记录我的管理是这样的:如果我不想让会话死掉,应该更改哪个apache2/php5配置?
session_start();
$_SESSION['admin'] = TRUE;
当我登录并留下闲置像10分钟,然后刷新,会话是死的,管理员将被注销。
我需要在htaccess
或php file
本身中设置什么,以便会话保持活动状态至少8小时?
我记录我的管理是这样的:如果我不想让会话死掉,应该更改哪个apache2/php5配置?
session_start();
$_SESSION['admin'] = TRUE;
当我登录并留下闲置像10分钟,然后刷新,会话是死的,管理员将被注销。
我需要在htaccess
或php file
本身中设置什么,以便会话保持活动状态至少8小时?
创建一个文件,并在它把<?php phpinfo() ?>
并检查输出。
您要查看的值为session.cookie_lifetime和session.gc_lifetime。
gc_maxlifetime指定数据将被视为“垃圾”并可能被清理的秒数。垃圾收集可能会在会话开始时发生(取决于session.gc_probability和session.gc_divisor)。
在您的负责启动会话的脚本中,您可以将 ini_set('session.gc_maxlifetime', 3600); // set session data life to 1 hour
或任何其他适合您的应用程序的时间。
我已经做到了,请查看:http://komponenty.bellady.sk/phpinfo.php寻找''gc_maxlifetime'',它已经设置为一个巨大的数字,并且会话仍然会死... –
session.gc_maxlifetime
用户:
该秒数之后,所存储的数据将被视为“垃圾” 和由垃圾收集过程清理。
ini_set('session.gc_maxlifetime', 60 * 60 * 8);
不起作用,看到我对之前答案的评论。 –
事实上,你不想希望会话不会死。
这是违反会话性质。会话是按定义结束的。
持续8小时的管理会话是没有意义的。
如果你想自动更新它 - 使用cookie。但不要触及会话机制本身。
你的回答听起来很明智。你能举个例子吗? –
对不起,我目前没有好的例子,但如果你的谷歌为“php记住我的功能”,你会得到一些我相信 –
Apache与PHP会话无关,除了是PHP和用户之间的中介。 –