服务器 
首页 > 服务器 > 浏览文章

由Apache 500错误引出的临时文件问题分析解决

(编辑:jimmy 日期: 2025/1/7 浏览:3 次 )

查看apache日志,发觉是mod_fcgid模块异常,提示"Connection reset by peer:mod_fcgid:error reading data from FastCGI server"、"Premature end of script headers:index.php"、"process /usr/... apache/cgi-bin exit(communication error, get unexpected signal 7",说白了就是php提前终止执行,没有返回header就退出。

我依据这些错误在网上搜索了很久,始终没有找到满意答案,甚至还被人误导,以为mod_fcgid模块配置的问题。

在没有找到解决方法之前,我一直在想,php最近虽然慢了点,但至少能运行,说明配置是没有问题;而且,如果现在执行phpinfo(),程序依然能够执行。我再次梳理出错规律,发觉include多的mvc框架就会提示500内部错误。其它简单的程序就能够运行。这说明什么?!说明php已经不能include文件了,为什么?只能是请求这些资源时动了临时文件,而临时文件没有多余空间了。

运行

df -h

发觉果然如此

Filesystem  Size  Used  Avail Use%  Mounted on
/dev/sda1  6.8G  6.5G  17M  100%  /
...

系统主目录/下已经爆掉了。

于是,查找大文件

find / -type f -size +300M

发觉php插件Xdebug产生了很多性能分析文件,而且都是以100M记。

/tmp/profiler/cachegrind.out.1336
/tmp/profiler/cachegrind.out.1329
....

于是修改php.ini,将分析文件存放在其它地方,或者干脆不保存。

# close xdebug profiler in php.ini
xdebug.profiler_enable = off

再删除xdebug性能分析目录和php var跟踪目录

rm -rf /tmp/profilter
rm -rf /tmp/trace

再次查看硬盘情况,发觉已使用为26%,剩余4.9G。

Filesystem  Size  Used  Avail Use%  Mounted on
/dev/sda1  6.8G  1.7G  4.9M  26%  /
...

甚至不用重启httpd服务器,刷新web,又正常运行了!!!

为免除后患,我们需要安装一个定时清理软件--tmpwatch,设置/etc/cron.daily/tmpwatch配置里面的定时时间

usr/sbin/tmpwatch "$flags" 30d /var/tmp

改为7d(必须以天为单位)

usr/sbin/tmpwatch "$flags" 7d /var/tmp

一个星期定时清理一次。

上一篇:Apache、Nginx下Font Awesome在 Firefox 中不显示问题解决方法
下一篇:国外著名论坛程序IPB(Invision Power Board)在nginx下的配置示例
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 站点导航 SiteMap