我有VPS(CentOs),运行少数子网站,我想监控我的会话文件,我可以为网站及其子域定义单独的会话保存路径,如下所示吗?
session_save_path("/home/sitename1/public_html/sessionpath/");
session_save_path("/home/sitename2/public_html/sessionpath/”);
for subdomains
session_save_path("/home/sitename1/public_html/subdomainName1/sessionpath/");
session_save_path("/home/sitename2/public_html/subdomainName2/sessionpath/”);
INI中的默认路径是tmp,它位于root目录中,我无权访问。 我的一些网站用户即使在页面中处于活动状态,也会丢失会话文件。可能是什么原因?是否有任何后台进程清理tmp文件夹文件?
我在INI for PHP Session机制中的其他设置如下 session.gc_divisor 3000, session.gc_probability 1, session.gc_maxlifetime 10800, session.cookie_lifetime 0,
答案 0 :(得分:0)
我不知道任何禁止全局访问/tmp
的Linux系统,或任何会这样做的系统管理员,但我认为这是可能的。
会话文件根据gc_maxlifetime
进行垃圾回收。在你的情况下,它是180分钟或3小时。这意味着在3小时不活动后,某个会话可能会被垃圾收集(即删除)。
如果您希望会话持续时间超过该时间,则需要另一个层(例如数据库),或者您必须继续使用JavaScript刷新会话。