Analyse und Lösung temporärer Dateiprobleme, die durch Apache 500-Fehler verursacht werden

高洛峰
Freigeben: 2023-03-05 11:06:01
Original
1367 Leute haben es durchsucht

Als ich mir das Apache-Protokoll ansah, stellte ich fest, dass das mod_fcgid-Modul abnormal war und Folgendes anzeigte: „Verbindung zurückgesetzt durch Peer:mod_fcgid:Fehler beim Lesen von Daten vom FastCGI-Server“, „Vorzeitiges Ende der Skript-Header:index.php“, „Prozess / usr/... apache/cgi-bin exit(communication error, get unerwartetes Signal 7“, um es ganz klar auszudrücken: PHP beendet die Ausführung vorzeitig und beendet sich, ohne den Header zurückzugeben.

Ich habe lange im Internet gesucht Zeit basierend auf diesen Fehlern, habe aber nie etwas zufriedenstellendes gefunden. Die Antwort wurde sogar zu der Annahme verleitet, dass es ein Problem mit der Konfiguration des mod_fcgid-Moduls gäbe In letzter Zeit etwas langsam, kann es zumindest ausgeführt werden, was bedeutet, dass es kein Problem mit der Konfiguration gibt. Wenn phpinfo() jetzt ausgeführt wird, kann das Programm weiterhin ausgeführt werden Das MVC-Framework mit zu vielen Includes führt zu 500 internen Fehlern. Was bedeutet das, dass die Datei nicht eingebunden werden konnte? Warum wird beim Anfordern dieser Ressourcen nur festgestellt, dass die temporäre Datei verschoben wurde? Datei hat keinen zusätzlichen Speicherplatz.

Das System-Home-Verzeichnis / wurde aufgelöst
df -h
Nach dem Login kopieren

Suchen Sie also nach großen Dateien

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

Ich habe festgestellt, dass das PHP-Plugin Xdebug viele Leistungsanalysedateien generiert hat und diese alle in 100 MB aufgezeichnet wurden php.ini geändert und die Analysedateien an anderen Orten gespeichert

Löschen Sie das xdebug-Leistungsanalyseverzeichnis und das PHP-Var-Tracking-Verzeichnis
find / -type f -size +300M
Nach dem Login kopieren

Überprüfen Sie die Festplattensituation erneut. Es wurde festgestellt, dass 26 % belegt sind und noch 4,9 GB übrig sind.
/tmp/profiler/cachegrind.out.1336
/tmp/profiler/cachegrind.out.1329
....
Nach dem Login kopieren

Sie müssen den httpd-Server nicht einmal neu starten. und es läuft wieder normal! Um zukünftige Probleme zu vermeiden, müssen wir eine geplante Reinigungssoftware installieren – tmpwatch, und die geplante Zeit in der /etc/cron.daily/tmpwatch-Konfiguration festlegen

# close xdebug profiler in php.ini
xdebug.profiler_enable = off
Nach dem Login kopieren

bis 7d (muss in Tagen angegeben werden) (in Einheiten)

rm -rf /tmp/profilter
rm -rf /tmp/trace
Nach dem Login kopieren

Räumen Sie regelmäßig einmal pro Woche auf

Weitere verwandte Artikel zur Analyse und Behebung temporärer Dateiprobleme, die durch Apache 500-Fehler verursacht werden, beachten Sie bitte die chinesische PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage