PHP-Warnung: Header-Informationen können nicht geändert werden
English version: PHP Warning: Cannot modify header information
PHP-Warnung: Header-Informationen können nicht geändert werden – Header wurden bereits gesendet …
Manchmal wird diese Meldung im Fehlerprotokoll des Servers angezeigt oder auf einer Webseite angezeigt. Es ist frustrierend und es sieht so aus, als ob etwas mit dem PHP-Skript, das in der Nachricht erwähnt wird, nicht stimmt. Tatsächlich weist diese Meldung auf ein Problem (einen Fehler) in einem anderen Skript, Plugin oder Theme hin. Sie können diese Meldung erhalten, wenn Sie ein fehlerhaftes Plugin verwenden und die Anzeige von PHP-Fehlern aktiviert ist, was normalerweise nicht der Fall sein sollte.
Diese Meldung erscheint, wenn ein Teil des PHP-Codes auf einer Website eine Ausgabe generiert, bei der es sich normalerweise um eine PHP-Warnmeldung handelt, die überhaupt nicht gesendet und im Browser des Benutzers angezeigt werden sollte. Und diese Ausgabe wird gesendet, bevor ein Header der Webseite generiert und an einen Benutzerbrowser gesendet wird. Der Header einer Webseite kann leer sein oder zusätzliche Informationen wie Cookies enthalten.
Unabhängig davon, ob der Header leer ist oder nicht, muss er vor dem Seiteninhalt gesendet werden.
Wenn ein fehlerhaftes WordPress-Plugin eine PHP-Warnung generiert, bevor andere Plugins Header an einen Browser senden, führt dies zu einem Serverfehler mit der Meldung „PHP-Warnung: Header-Informationen können nicht geändert werden – Header wurden bereits gesendet …“ .
Eine solche Meldung kann jeden irreführen, da sie nicht sagt, welches Skript oder Plugin diesen Fehler verursacht hat. Wenn ein Webserver eine Ausgabe erkennt, die von einem Plugin ohne gesendeten Header generiert wird, erstellt er den Header automatisch und sendet ihn an die Browser, sodass alle anderen Plugins, die ein solches Verhalten nicht erwarten, ihre Header bei Bedarf nicht senden können .
So lösen Sie dieses Problem im Zusammenhang mit der Verwendung von WP Cerber Security
- Deaktivieren Sie die Fehleranzeige in den PHP-Einstellungen Ihres Hosting-Kontrollpanels. Wenn Sie keinen Zugriff auf die PHP-Einstellungen haben, bitten Sie Ihren Hosting-Anbieter um Hilfe.
- Deaktivieren Sie die Anzeige von PHP-Fehlern in den WP Cerber-Einstellungen auf der Hardening-Administratorseite.
- Stellen Sie in den Haupteinstellungen von WP Cerber „Sicherheits-Engine laden“ auf „Standardmodus“ oder „Erweiterter Modus“.
- Überprüfen Sie, ob die WP_DEBUG- Konstante in der Datei wp-config.php definiert ist. Kommentieren Sie die Zeile mit doppelten Schrägstrichen aus // oder löschen Sie einfach die gesamte Zeile. So sollte es aussehen:
// define( 'WP_DEBUG', true );
// define( 'WP_DEBUG', 1 ); - Fügen Sie die folgenden Zeilen am Anfang der Datei wp-config.php hinzu:
@ini_set( 'display_errors', 0 );
@ini_set( 'log_errors', 1 );
Können WP Cerber oder WordPress die Ursache des Problems sein?
Nein. Der einzige Code, der dieses Problem verursachen kann, ist entweder ein veraltetes/fehlerhaftes Plugin oder das aktive Theme. Wie findet man die Grundursache? Überprüfen Sie das Serverfehlerprotokoll. Und bitte entfernen Sie veraltete Plugins.