当我们session.cookie_lifetime = 0
在 PHP 中使用时,cookie 在关闭时会被浏览器删除。但是服务器没有办法知道这一点,所以它依赖于cookie不会被再次使用的事实。
我想知道的是会话在服务器端有效多长时间,以防有人恢复该 cookie。
对于 Debian Linux 系统,有一个清理“死”会话的 cron 作业。
最长生命周期在您的 php.ini 文件中
/etc/cron.d/php5
: 用于 php5 的 crontab 片段
这将清除早于 X 的会话文件,其中 X 以秒为单位定义为所有 php.ini 文件中 session.gc_maxlifetime 的最大值,如果未定义,则为 24 分钟。见/usr/lib/php5/maxlifetime
。
每 30 分钟查找并清除旧会话:
09,39 * * * * root [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -type f -cmin +$(/usr/lib/php5/maxlifetime) -delete