php session 配置如下:
directive local value master valuesession.auto_start off offsession.bug_compat_42 off offsession.bug_compat_warn off offsession.cache_expire 180 180session.cache_limiter nocache nocachesession.cookie_domain no value no valuesession.cookie_httponly off offsession.cookie_lifetime 0 0session.cookie_path / /session.cookie_secure off offsession.entropy_file no value no valuesession.entropy_length 0 0session.gc_divisor 100 100session.gc_maxlifetime 1440 1440session.gc_probability 1 1session.hash_bits_per_character 5 5session.hash_function 0 0session.name phpsessid phpsessidsession.referer_check no value no valuesession.save_handler files filessession.save_path d:\phptemp d:\phptempsession.serialize_handler php phpsession.use_cookies on onsession.use_only_cookies on onsession.use_trans_sid 0 0
现在的问题是用户登录后就能一直在线,临时目录下的session文件不能自动销毁,越积越多,最后把服务器拖垮了。
奇怪的是同样的配置在另外一台服务器上就没问题,应该是系统设置方面的问题,不涉及到程序开发,请有运维经验的高人指点?
回复讨论(解决方案)
关注一下期待高手来回答。
有没有高手啊!
你改变了 session.save_path 还能垃圾回收吗?
我的经验是 session.save_path 为操作系统的临时目录时(c:\windows\temp)才能回收
session.save_path目录换到c:\windows\temp果然可以了,应该是新建目录权限设置问题.
我的理解是: gc 实际是操作系统的垃圾处理机制,他只在发现有垃圾(当然是系统的垃圾箱啦)时才询问“垃圾”归属者是否需要清理
相关专题推荐:php session (包含图文、视频、案例)
