Ich habe dies in meinem apace error.log:
[Fri Sep 18 08:10:54 2009] [Hinweis] Child Pid 9178 Ausgangssignal Segmentierungsfehler (11)
[Fri Sep 18 08:11:41 2009] [Hinweis] Child Pid 9187 Exit Signal Segmentierungsfehler (11)
[Fr. 18. September 08:12:12 2009] [Hinweis] Child Pid 9204 Ausgangssignal Segmentierungsfehler (11)
[Fr 18. September 08:12:13 2009] [Hinweis] Child Pid 9202 Ausgangssignal Segmentierungsfehler (11)
[Fr 18. September 08:14:45 2009] [Hinweis] Child PID 9251 Exit Signal Segmentierungsfehler (11)
Es begann am selben Tag, an dem ich die Datei vhost.conf erweitert habe. Also kehrte ich zur ursprünglichen Datei zurück und führte einen Neustart von apache2ctl durch. Leider tritt es immer noch auf.
Apache scheint Seiten in Ordnung zu bringen.
Irgendwelche Ideen?
Prost,
Nathan.
quelle
Sig11 treten normalerweise nur aus einem von zwei Gründen auf:
Schlechte Programme.
Im Fall von Apache ist es statistisch gesehen unwahrscheinlich, dass ein Fehler im Apache-Kerncode vorliegt.
Es ist viel häufiger, ein Fehler eines Moduls zu sein. Entweder so, wie ein Modul sicher mit Ausnahmen im Code oder den Bibliotheken umgeht, die es verarbeitet. Oder die Art und Weise, wie es mit dem von Apache gewählten MPM-Modell interagiert. Wenn sich ein Modul auf diese Weise schlecht verhält, wird es unkontrolliert beendet, bevor Daten an den untergeordneten Apache-Prozess zurückgegeben werden, und erzeugt somit den Segfault.
Überprüfen Sie alle Änderungen, die Sie seit dem letzten Funktionieren vorgenommen haben. Wie Lee B sagt, ist dies das perfekte Beispiel für die Verwendung der Versionskontrolle.
Um die Sache etwas komplizierter zu machen, können Sie häufig dasselbe Verhalten erzeugen, indem Sie
graceful
nach Änderungen am Apache-Modul-Setup einen statt eines vollständigen Neustarts durchführen. Sie können dies ausschließen, indem Sie Apache stoppen und starten.Schlechte Hardware.
Wenn Sie sicher sind, dass die Fehler mit Ihrer Konfigurationsänderung zusammenfallen und Sie keine weiteren negativen Auswirkungen auf das System feststellen, können Sie dies wahrscheinlich ausschließen. Aber es kann sich lohnen, daran zu denken, wenn Ihnen andere Wege ausgehen. CPUs und RAM sind die typischen Schuldigen.
quelle
Endlich wurde das behoben. Ein einfacher Neustart des Servers stoppte die Seg-Fehler.
Danke für deine Antworten. Ich bin mir sicher, dass dies nützlich ist, um zukünftige Probleme zu diagnostizieren.
Nathan.
quelle
Ich nehme an, es könnte ein geladenes Modul sein, das ein Problem hat.
Ich habe das gleiche Verhalten mit PHP und der gettext php-Erweiterung erlebt, es hat PHP zum Absturz gebracht und daher das Kind des Apachen, das die Anfrage bedient.
quelle
Nachdem ich stundenlang versucht hatte, die Ursache für meinen eigenen Segmentierungsfehler herauszufinden, begann ich, Dinge nach dem Zufallsprinzip zu deaktivieren. In meinem Fall war die Fehlerursache Zends Beschleuniger.
Da ich diese Erweiterung nicht benötige, lasse ich sie deaktiviert. Wenn Sie das gleiche Problem haben und diese Erweiterung benötigen, können Sie versuchen, den eaccelerator-Cache zu löschen und httpd neu zu starten.
quelle
Das nächste Mal können Sie versuchen, Strace oder Truss zu verwenden
quelle