一尘不染

我的课程将持续多长时间?

php

有人可以从下面的数据中告诉我我的会话将持续多长时间吗?-我不确定哪个告诉我

session.auto_start  Off Off
session.bug_compat_42   Off Off
session.bug_compat_warn On  On
session.cache_expire    180 180
session.cache_limiter   nocache nocache
session.cookie_domain   no value    no value
session.cookie_httponly Off Off
session.cookie_lifetime 0   0
session.cookie_path /   /
session.cookie_secure   Off Off
session.entropy_file    no value    no value
session.entropy_length  0   0
session.gc_divisor  1000    1000
session.gc_maxlifetime  1440    1440
session.gc_probability  1   1
session.hash_bits_per_character 5   5
session.hash_function   0   0
session.name    PHPSESSID   PHPSESSID
session.referer_check   no value    no value
session.save_handler    files   files
session.save_path   /var/lib/php/session    /var/lib/php/session
session.serialize_handler   php php
session.use_cookies On  On
session.use_only_cookies    Off Off
session.use_trans_sid   0   0

阅读 316

收藏
2020-05-26

共1个答案

一尘不染

通常,您可以说_session.gc_maxlifetime_ 指定自上次更改会话数据( 而不是 上次session_start调用!)以来的最长生存时间。但是PHP的会话处理有点复杂。

因为会话数据由垃圾收集器,其仅由称为除去session_start用的概率_session.gc_probability合_ 由devided
session.gc_divisor
。默认值为1和100,因此垃圾收集器仅在所有session_start调用的1%中启动。这意味着,即使会话在理论上已经超时(会话数据更改的时间超过了几秒钟前的_session.gc_maxlifetime_ ),会话数据的使用时间也可以更长。

2020-05-26