2014-02-10 92 views
0

最近我的网络主机改变了PHP配置。我唯一的抱怨是会议在使用时到期。PHP会话在使用期间过期

一般来说,我只写了一次会话,但读了很多次,所以我认为这可能是因为filemtime没有改变,所以每次读取时,我也通过递增计数器来写。 24分钟后仍然没有,会话是否正在使用,它会被清除。

有关如何解决此问题的任何想法?

+0

您可以将自己的['session.save_path'](http://nl1.php.net/manual/en/session.configuration.php#ini.session.save-path)设置为一个目录你的控制。但真的,你的虚拟主机应该尽快解决这个问题。 – Wrikken

+0

顺便说一句:它听起来像是他们用'noatime'选项挂载了一个磁盘。确实会让PHP超时。告诉他们,并要求在磁盘_with_ atime上的会话保存路径。 – Wrikken

回答

0

当您开始会话并结束脚本(或致电session_write_close())时,PHP会不断读取和写入会话数据文件,因此文件mtime应该更改。没有必要更改文件系统的atime选项。

但事情可能很容易出错,包括有奇怪的cronjob脚本运行该删除会话文件。没有你在服务台上抱怨,他们将永远不会修复它。