OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4263|回复: 0

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

[复制链接]

153

主题

310

帖子

0

精华

高级会员

Rank: 4

积分
673
金钱
673
注册时间
2019-3-26
在线时间
18 小时
发表于 2019-4-15 10:55:42 | 显示全部楼层 |阅读模式
最近老是发觉centos下的php出现各种各样的问题,先是smarty大点就中断执行,然后,运行速度好像变慢,到今晚。。。,终于罢工了--500内部错误。

查看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.inixdebug.profiler_enable = off

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

rm -rf /tmp/profilterrm -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

一个星期定时清理一次。


http://www.iis7.com/c/90/
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-25 21:59

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表