Nach vielen Suchen, Versuchen, Fixieren, Warten und Weinen und bevor ich aufhöre, möchte ich hier die letzte Chance für diesen Bug nehmen ...
Wir laufen auf Microsoft Windows Server 2012, Apache / 2.4.6 (Win64) OpenSSL / 1.0.1e PHP / 5.5.1 .
In regelmäßigen Abständen mindestens 5 bis 10 Mal innerhalb von 24 Stunden, Apache abstürzt und neu gestartet. Meistens zweimal. Weil PHP abgestürzt ist.
Die ganze Anwendung ist PHP, also wird die Konfiguration von PHP als FastCGI das Problem nicht lösen: Apache stürzt nicht ab, aber PHP wird es tun.
hier noch ein paar Infos:
Windows-Ereignisprotokoll:
%Vor%Apache-Protokoll:
%Vor%Die Hauptfrage ist, warum PHP abstürzt? ..
Vielen Dank im Voraus!
In meinem Fall nichts mehr in den Protokollen. Nur:
%Vor%Problem war im Umleitungscode:
%Vor%Dieser Code stoppt den Apache-Service und startet neue Prozesse. Aber nicht die ganze Zeit ... manchmal hat es gut geklappt ... manchmal stürzt ab: (
Korrekter Code ist:
%Vor%Weitere Informationen über: PHP: Verwendung von exit (); oder stirb(); nach Kopfzeile ("Location:");
Es gibt einen bekannten Fehler: Immer wenn eine Datei eine Dateigröße von 4096 oder mehr hat, werden das PHP-Modul und der Apache nicht mehr funktionieren. Das ist kein Witz!
Ich denke, es gibt verschiedene Ursachen für dieses child process XYZ exited with status 255
im Netz. Die meisten von ihnen sind PHP-bezogen.
Ich hatte gerade den gleichen Absturz unter Windows, Apache 2.4.18 mit PHP 5.6.16, wenn ich eine Postnachricht eines Benutzers über den Markdown-Parser von Ссылка <übermittelte / a>. Es wurde behoben, indem der SQL-Quellcode in der Nachricht, die Backticks für Bezeichner-Quotierungen enthielt, mit den drei Backticks, die Markdown für den Quellcode erwartet, umging. Nicht tiefer in Paredown.php getaucht, um herauszufinden, wo es genau passiert ist, aber es muss etwas mit diesen Backticks sein.