Bei einem Fehler in einer PHP-Anwendung sehen Sie entweder eine leere weiße Seite oder den Fehler 500. Die Ursache erkennt man an der Fehlermeldung. Diese ist auf einer Live-Website aus Sicherheitsgründen jedoch verborgen und wird in einem Protokoll gespeichert.
1. Sehen Sie in das Fehlerprotokoll
Die letzten Fehler finden Sie im Fehlerprotokoll der Website. Wenn Sie keinen Zugriff darauf haben oder es nicht sehen, schreiben Sie uns, und wir senden Ihnen die letzten Zeilen. Die Zeile mit dem Fehler enthält den Fehlertyp, eine Beschreibung, die Datei und die Zeilennummer.
2. Aktivieren Sie das Debugging in der Anwendung
WordPress: Stellen Sie in der Datei wp-config.php Folgendes ein:
define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false );
Fehler werden dann in die Datei wp-content/debug.log geschrieben und den Besuchern nicht angezeigt.
Eigenes PHP-Skript: Am Anfang der Datei können Sie vorübergehend Folgendes hinzufügen:
ini_set( 'display_errors', '1' ); error_reporting( E_ALL );
Entfernen Sie diese Zeilen nach dem Auffinden des Fehlers immer. Angezeigte Fehler verraten Pfade und Angaben zum Server.
Häufigste Meldungen
| Parse error / syntax error | Fehler in der Schreibweise des Codes (fehlendes Semikolon oder fehlende Klammer). Häufig nach einer manuellen Bearbeitung einer Datei. |
| Call to undefined function | Die Funktion existiert nicht. Es fehlt eine Erweiterung, oder sie wurde in dieser PHP-Version entfernt. Siehe Umstieg auf eine neuere PHP-Version. |
| Class not found | Die Klasse wurde nicht geladen. Häufig unvollständig hochgeladene Dateien oder eine fehlende Bibliothek. |
| Allowed memory size exhausted | Das Speicherlimit (memory_limit) ist erschöpft. Siehe PHP-Speicherlimit (memory_limit). |
| Maximum execution time exceeded | Das Skript lief zu lange. Verarbeiten Sie bei großen Importen die Daten in Teilen. |
| Uncaught TypeError | Die Funktion hat einen anderen Werttyp erhalten als erwartet. Typisch nach dem Umstieg auf ein neueres PHP, in dem die Prüfungen strenger sind. |
Vorgehen, wenn Sie nicht wissen, was passiert ist
- Erinnern Sie sich, was sich geändert hat, kurz bevor das Problem auftrat: Aktualisierung, neues Plugin, Wechsel der PHP-Version.
- Machen Sie die Änderung rückgängig (Plugin deaktivieren, PHP-Version zurückstellen).
- Aktivieren Sie anschließend das Debugging und beheben Sie die Ursache.
Weitere Fehlertypen von Websites sind im Artikel Fehler 403, 404 und 500 beschrieben.