# ls /var/lib/php5 | wc -l
7488
# ls -la
-rw------- 1 wwwrun www 0 Nov 9 15:30 sess_vtuh671rlafdidfjmgjfu6065p4tfieg
-rw------- 1 wwwrun www 0 Nov 12 02:30 sess_vu9pn476oiqbsd20q4s2brt60b9vg90d
-rw------- 1 wwwrun www 0 Nov 9 15:07 sess_vuonfs2cqsdiq8ja51ornh6lp5j9mf93
-rw------- 1 wwwrun www 0 Nov 9 16:02 sess_vuutcad8as55il34db3uqhqrsltd4q6o
-rw------- 1 wwwrun www 0 Nov 9 23:26 sess_vv2mrv5dnlnts6das4g5jlfldael4l0e
-rw------- 1 wwwrun www 44 Nov 9 20:35 sess_vvc0cfjuvk3lqb5m97fv6gsmv6bjhsdk
-rw------- 1 wwwrun www 0 Nov 9 10:33 sess_vvq82fhj9lg29gaejemlb2lrk25mqv7d
-rw------- 1 wwwrun www 0 Nov 9 20:36 sess_vvtd4ka8rfmcroa34unl06916ubj8sb9
大部分都是空的。服务器上没有那么多用户,所以我不知道这些文件是从哪里来的。
这是个问题吗?或者 Apache 如何处理这些文件?它们会自动删除吗?
这可能是由损坏的 PHP 文件引起的吗?
答案1
我假设这是来自默认会话处理程序(你没有说)。
是的,文件应该会自动删除,具体取决于会话 gc_maxlifetime和session.gc_probability。如果您目前使用的是默认设置,那么增加后者将会减少文件的数量。
但除非您有性能/容量问题,否则无需担心。
您有这么多的空文件意味着您的服务器花费了大量的时间来管理无数据 - 如果您有性能问题,那么更智能地处理空会话可能会有所帮助。即重新设计您的代码 - 但请先阅读有关会话处理工作原理的手册。