Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Apache会话在同一服务器上的工作方式不同_Php_Apache_Session_Centos_Server - Fatal编程技术网

Php Apache会话在同一服务器上的工作方式不同

Php Apache会话在同一服务器上的工作方式不同,php,apache,session,centos,server,Php,Apache,Session,Centos,Server,情况是,我们有一台本地服务器机器,上面有Apache,两个项目在同一台本地服务器上 问题是当我们设置session.gc_maxlife=10时,例如,服务器在10秒后注销项目N1并成功删除会话文件,但在另一个项目N2上,会话文件未被删除,会话未注销 session.gc_概率和session.gc_除数都设置为1 原因可能是什么? 谢谢 这可能是因为PHP垃圾收集器,可能会在所需时间段后删除会话,也可能不会删除会话。见说明: session.gc_maxlifetime指定在该会话结束后的秒

情况是,我们有一台本地服务器机器,上面有Apache,两个项目在同一台本地服务器上

问题是当我们设置session.gc_maxlife=10时,例如,服务器在10秒后注销项目N1并成功删除会话文件,但在另一个项目N2上,会话文件未被删除,会话未注销

session.gc_概率和session.gc_除数都设置为1

原因可能是什么?
谢谢

这可能是因为PHP垃圾收集器,可能会在所需时间段后删除会话,也可能不会删除会话。见说明:

session.gc_maxlifetime指定在该会话结束后的秒数 数据将被视为“垃圾”,并可能被清除。垃圾 采集可能在会话启动期间发生(取决于 session.gc_概率和session.gc_除数)


(我的重点)

@Zarebski,谢谢你的回答。概率和除数参数都设置为1,这与100%相同。因此,我们将“可能”改为“必须”。我不认为这是这里的原因…我认为这里重要的是垃圾收集可能在会话启动期间发生。如果站点上没有活动,即会话正在启动,那么GC将不会被激活。它不是作为一个单独的活动运行的,总是在寻找垃圾,它只是作为一些其他会话处理活动的一部分发生的