DirectAdmin文件管理器'Connection Timeout' 处理方法一则

故障触发

今日在检查一个站点时,发现DirectAdmin文件管理器无法打开该站点,其他站点正常。表面看cpu占用较高,约一分钟左右报错:“Connection Timeout xxxx”。初步预想与该站点文件有关,因为该站点文件比较大,大概5G左右,但我也怀疑DA处理5GB的文件就超时了吗?有点疑惑。

探索过程

查看directadmin错误日志:

018:08:27-19:49:41: Timeout (timeout=60) from 1.2.3.4 : last flagged: getDirFilesAndDirs(/home/USERNAME/domains/DOMAIN.com/public_html/wp-content/cache/page_enhanced/www.DOMAIN.com/3631.html, *tlf, *tdlf, USERNAME)

基本确定是该站点下的文件问题,该站点是一个wordpress图片站,看样子是在缓存的目录里面超时的,所以自然想到该站点中有“W3 Total Cache”插件。

但是该插件功能强大,无法确定是哪个功能导致的。而且也不能排除是上传图片太多的问题。遂通过ssh命令行进入服务器,进入该站点的/wp-content/下,通过 ls -lR|grep "^-"|wc -l 命令查看该目录(包括子目录)下所有文件总数量为8万个。再查看/wp-content/uploads/文件数量为4万个,/wp-content/cache/文件数量也为4万个。推断是缓存碎片太多导致。随后清空并关闭“W3 Total Cache”中的“Object Cache”功能,故障解决。

原因总结

“Wordpress”插件“W3 Total Cache”中的“Object Cache”功能使缓存碎片过多,导致DirectAdmin文件管理器读取文件列表超时

点赞