它没有.有两个因素在起作用:
客户端cookie的生命周期 ; 此cookie包含会话ID.它与会话数据本身没有任何关系.
手册可能不会强调这一点:
这与会话的生命周期无关
无论您将此设置设置为什么,它都不会更改会话在您的服务器上运行的时间.
这只会改变HTTP缓存过期时间(
Expires:和Cache-Control: max-age标题),它建议浏览器将页面缓存在用户缓存中的时间长度,而不必从服务器重新加载它们.
服务器端会话数据的生命周期; 通过使用来自客户端的会话ID查找来"激活"会话.它的寿命是通过控制这里讨论会话垃圾收集设置.
一个评论者发布在session.cache_expire文档页面上,大概是在谈论会话数据:
大多数人也不知道的是,大多数Linux发行版(至少对我来说是Debian和Ubuntu)都有一个cronbjob,可以使用全局设置的值
/etc/php5/php.ini(默认为24分钟)来清理会话目录.因此,即使您在脚本中设置了更大的值,cronbjob仍将使用全局值清理会话.如果遇到这种情况,可以将全局值设置得更高
/etc/php5/php.ini,禁用cronjob甚至更好,在非系统范围的目录或数据库中进行自己的会话清理.
正如您所看到的,在区分会话跟踪和会话数据存储之间,社区中存在大量混淆.