Ich benutze PHP 5.4 auf CentOS 7 und wenn es eine PHP-Datei gibt, die einen Fehler (entweder eine Ausnahme oder einen Syntaxfehler) auslöst, gibt es einen HTTP 200 Status zurück Code anstelle von 500.Apache/PHP gibt HTTP Status Code 200 auf Fehlerseiten zurück
Wie bekomme ich es, um einen 500 Server-Fehler zurückzugeben, wenn PHP einen Fehler feststellt? Ich habe versucht, andere Stackoverflow - Beiträge zu betrachten, und alle scheinen auf Lösungen zu verweisen, die den eigenen 500 - Fehlercode zurückgeben (was meiner Meinung nach das normale Verhalten von PHP sein sollte, ohne dass ich das manuell auslösen müsste) http Header, nach dieser Info: PHP emitting 500 on errors - where is this documented?) Es zeigt auch auf Xdebug als ein mögliches Problem, aber mein Problem bleibt bestehen, auch wenn ich den Server ohne Xdebug neu erstellen.
Die entsprechenden Einstellungen, die ich habe, sind:
- display_errors: auf
- display_startup_errors: auf
- error_reporting: -1 (dies bewirkt, dass alle Fehler gemeldet werden) Nach
warum möchten Sie? Apache-Fehler und PHP-Fehler sind nicht dasselbe –
Aber er wird wahrscheinlich jede PHP-seitige Ausnahme behandeln, so dass PHP automatisch mit '500' antwortet. –
@Dagon Ich spreche über http Status-Codes von Apache serviert. Ich versuche, das Verhalten zu erhalten, wo ein PHP-Fehler den 500-Statuscode auslöst. –