由Apache 500錯誤引出的臨時文件問題分析解決
查看apache日志,發(fā)覺是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提前終止執(zhí)行,沒有返回header就退出。
我依據(jù)這些錯誤在網(wǎng)上搜索了很久,始終沒有找到滿意答案,甚至還被人誤導(dǎo),以為mod_fcgid模塊配置的問題。
在沒有找到解決方法之前,我一直在想,php最近雖然慢了點,但至少能運行,說明配置是沒有問題;而且,如果現(xiàn)在執(zhí)行phpinfo(),程序依然能夠執(zhí)行。我再次梳理出錯規(guī)律,發(fā)覺include多的mvc框架就會提示500內(nèi)部錯誤。其它簡單的程序就能夠運行。這說明什么?!說明php已經(jīng)不能include文件了,為什么?只能是請求這些資源時動了臨時文件,而臨時文件沒有多余空間了。
運行
df -h
發(fā)覺果然如此
Filesystem Size Used Avail Use% Mounted on /dev/sda1 6.8G 6.5G 17M 100% / ...
系統(tǒng)主目錄/下已經(jīng)爆掉了。
于是,查找大文件
find / -type f -size +300M
發(fā)覺php插件Xdebug產(chǎn)生了很多性能分析文件,而且都是以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
再次查看硬盤情況,發(fā)覺已使用為26%,剩余4.9G。
Filesystem Size Used Avail Use% Mounted on /dev/sda1 6.8G 1.7G 4.9M 26% / ...
甚至不用重啟httpd服務(wù)器,刷新web,又正常運行了?。?!
為免除后患,我們需要安裝一個定時清理軟件--tmpwatch,設(shè)置/etc/cron.daily/tmpwatch配置里面的定時時間
usr/sbin/tmpwatch "$flags" 30d /var/tmp
改為7d(必須以天為單位)
usr/sbin/tmpwatch "$flags" 7d /var/tmp
一個星期定時清理一次。
相關(guān)文章
詳解centos7虛擬機安裝elasticsearch5.0.x-安裝篇
本篇文章主要介紹了centos7虛擬機安裝elasticsearch5.0.x-安裝篇,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-12-12
Linux安裝NodeJs并配合Nginx實現(xiàn)反向代理
本篇文章主要介紹了Linux安裝NodeJs并配合Nginx實現(xiàn)反向代理,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-11-11
Linux下的crontab定時執(zhí)行任務(wù)命令詳解
cron的配置文件稱為“crontab”,是“cron table”的簡寫。這篇文章主要介紹了Linux下的crontab定時執(zhí)行任務(wù)命令詳解,需要的朋友可以參考下2018-09-09
Linux中l(wèi)ogrotate日志輪詢操作總結(jié)
這篇文章主要給大家介紹了在Linux中l(wèi)ogrotate日志輪詢操作的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2017-06-06
linux環(huán)境配置nginx導(dǎo)致頁面不刷新的解決方法
這篇文章介紹了linux環(huán)境配置nginx導(dǎo)致頁面不刷新的解決方法,有需要的朋友可以參考一下2013-09-09
Linux中/var/spool/postfix/maildrop占空間很大的原因解析
這篇文章主要給大家介紹了關(guān)于Linux中/var/spool/postfix/maildrop占空間很大的原因解析,文中介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。2017-04-04

