PHP会话默认超时[重复]

Posted

技术标签:

【中文标题】PHP会话默认超时[重复]【英文标题】:PHP sessions default timeout [duplicate] 【发布时间】:2012-04-11 20:15:43 【问题描述】:

默认情况下 php 会话是否超时 - 即如果我没有任何编码,用户最终会在一段时间不活动后“注销”吗?

【问题讨论】:

感谢所有这些。我想要一个更直接的答案,因此这个问题! - 赞成 有趣的是所有答案都提到“20 分钟”和“1440 秒”,而没有人注意到 1440 秒实际上是 24 分钟。 【参考方案1】:

这取决于服务器配置或session.gc_maxlifetime 中的相关指令php.ini

通常默认值为 24 分钟(1440 秒),但您的虚拟主机可能已将默认值更改为其他值。

【讨论】:

想知道为什么默认为 1440 秒? ...***.com/a/37176824/57091 是创建后 1440 秒还是上次活动后 1440 秒?【参考方案2】:

您可以在您的网络服务器上的 php 配置中更改它。 在php.ini 中搜索

session.gc_maxlifetime() 该值以秒为单位设置。

【讨论】:

【参考方案3】:

是的,这通常发生在 1440 秒(24 分钟)之后

【讨论】:

@Mani 1440 秒 20 分钟是什么时候?【参考方案4】:

http://php.net/session.gc-maxlifetime

session.gc_maxlifetime = 1440
(1440 seconds = 24 minutes)

【讨论】:

【参考方案5】:

您可以在 php.ini 中设置会话超时。默认值为 1440 秒

session.gc_maxlifetime = 1440

; NOTE: If you are using the subdirectory option for storing session files
;       (see session.save_path above), then garbage collection does *not*
;       happen automatically.  You will need to do your own garbage
;       collection through a shell script, cron entry, or some other method.
;       For example, the following script would is the equivalent of
;       setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes):
;          find /path/to/sessions -cmin +24 -type f | xargs rm

【讨论】:

【参考方案6】:

是的,在 PHP 中,会话通常会在 20 分钟后结束。

【讨论】:

您的意思是 20 分钟不活动吗?或者即使用户处于活动状态并在他的站点上保留某种请求,会话也会过期吗? @rammanoj 20 分钟不活动。 1440 秒是默认值,实际上是 24 分钟。

以上是关于PHP会话默认超时[重复]的主要内容,如果未能解决你的问题,请参考以下文章

PHP会话超时脚本[重复]

增加PHP中的会话超时[重复]

什么是 ASP.NET 中的默认会话超时?

更改 Spring Web 应用程序的默认会话超时

Apache Tomcat 应用程序的默认会话超时

Java EE 网站的默认会话超时是多少?