Kapitel 18 · 18.1
Meine Website ist weiß oder zeigt einen Fehler 500
Sie öffnen Ihre Website und sehen einen weißen Bildschirm, die Meldung 500 Internal Server Error, HTTP ERROR 500 oder bei WordPress Es ist ein kritischer Fehler auf dieser Website aufgetreten. Das bedeutet fast immer, dass der Code Ihrer Website hängen bleibt. Der Server selbst funktioniert meistens einwandfrei. Mit den Schritten unten finden Sie in den meisten Fällen selbst die Ursache.
Zuerst: Was hat sich gerade geändert?
Ein Fehler 500 entsteht fast nie aus dem Nichts. Denken Sie an die letzten Stunden oder Tage zurück:
- Haben Sie ein Plugin, ein Theme oder WordPress selbst aktualisiert, oder hat WordPress das automatisch getan?
- Haben Sie die PHP-Version geändert?
- Haben Sie etwas in der Datei .htaccess angepasst oder eine Weiterleitung oder einen geschützten Ordner erstellt?
- Haben Sie Dateien hochgeladen oder Dateirechte geändert?
Wissen Sie, was es war, machen Sie zunächst genau diese Änderung rückgängig. Das ist meistens die schnellste Lösung.
Schritt 1: Schauen Sie ins Fehlerprotokoll
Das Fehlerprotokoll zeigt Ihnen genau, welche Datei und welche Zeile den Fehler verursacht. Sie finden es in DirectAdmin unter Systeminformationen & Dateien und dann Website-Übersicht & Protokolle. Wählen Sie Ihre Domain und öffnen Sie das Fehlerprotokoll. Schauen Sie sich die untersten Zeilen an: Diese sind die neuesten. Wie das genau funktioniert, lesen Sie in Website-Übersicht und Protokolle: das Fehler-Protokoll und das Zugriffsprotokoll.
Sehen Sie dort beispielsweise PHP Fatal error mit einem Pfad zu wp-content/plugins/name-des-plugins, dann wissen Sie sofort, welches Plugin der Übeltäter ist.
Schritt 2: Die häufigsten Ursachen
Unten stehen die Ursachen von häufig bis selten.
1. Ein Plugin oder Theme nach einem Update
Dies ist bei WordPress mit Abstand die häufigste Ursache. Kommen Sie nicht mehr in die WordPress-Verwaltung, deaktivieren Sie die Plugins über DirectAdmin:
- Öffnen Sie den Dateimanager (siehe Dateimanager öffnen: die Verzeichnisse in Ihrem Paket).
- Gehen Sie zu domains/ihredomain.nl/public_html/wp-content.
- Benennen Sie den Ordner plugins um, zum Beispiel in plugins-aus. WordPress deaktiviert dann alle Plugins.
- Funktioniert Ihre Website wieder? Benennen Sie den Ordner zurück in plugins um und aktivieren Sie in WordPress die Plugins eins nach dem anderen wieder, bis der Fehler zurückkommt. Dann wissen Sie, welches es ist.
Wissen Sie bereits, um welches Plugin es sich handelt (aus dem Fehlerprotokoll), benennen Sie nur den Ordner dieses Plugins um. WordPress sendet bei einem kritischen Fehler oft auch eine E-Mail an die Administrator-Adresse mit einem Link zum Wiederherstellungsmodus. Schauen Sie also auch in Ihr Postfach.
2. Die PHP-Version passt nicht zu Ihrer Website
Eine alte Website funktioniert oft nicht mit einer neuen PHP-Version, und ein neues Plugin manchmal nicht mit einer alten. Haben Sie die PHP-Version gerade geändert, setzen Sie sie unter Select PHP version zurück (siehe Die PHP-Version auswählen (Select PHP version)). In Fehler nach einem PHP-Upgrade und das Fehlerprotokoll finden lesen Sie, wie Sie die Website anschließend doch für eine neuere Version geeignet machen.
Tipp: Wurde Ihre Website seit Jahren nicht aktualisiert und funktioniert sie nicht mehr mit einer modernen PHP-Version? Wir können sie für Sie aktualisieren. Schauen Sie auf www.weboke.de/website-php-upgrade.
3. Ein Fehler in .htaccess
Eine einzige falsche Zeile in .htaccess führt sofort zu einem Fehler 500 für die gesamte Website. Ein bekanntes Beispiel ist eine Zeile, die ein Sicherheits-Plugin hinterlassen hat, wie php_value auto_prepend_file mit einem Pfad zu einer Datei, die nicht mehr existiert (zum Beispiel von Wordfence oder All In One WP Security). Testen Sie es so:
- Aktivieren Sie im Dateimanager die versteckten Dateien (siehe Versteckte Dateien wie .htaccess anzeigen und bearbeiten).
- Benennen Sie .htaccess in public_html in .htaccess-alt um.
- Funktioniert die Website jetzt (eventuell ohne schöne Adressen), dann liegt der Fehler in dieser Datei. Entfernen Sie die fehlerhafte Zeile und benennen Sie die Datei zurück.
PHP-Einstellungen wie die maximale Upload-Größe stellen Sie am einfachsten unter Select PHP version ein (siehe PHP-Optionen: upload_max_filesize, memory_limit und max_execution_time). Eine Zeile mit php_value in .htaccess geht auch (siehe PHP-Einstellungen pro Verzeichnis und über .htaccess).
4. Zu wenig Speicher für PHP
Steht im Fehlerprotokoll Allowed memory size of ... bytes exhausted, dann benötigt ein Skript mehr Speicher, als PHP nutzen darf. Erhöhen Sie memory_limit bei den Optionen von Select PHP version (siehe PHP-Optionen: upload_max_filesize, memory_limit und max_execution_time).
5. Falsche Dateirechte
Haben Ordner oder Dateien zu weitreichende Rechte (wie 777), weigert sich der Server, sie auszuführen. Ordner sollten auf 755 stehen und Dateien auf 644. Wie Sie das anpassen, lesen Sie in Rechte für Dateien und Verzeichnisse (chmod).
6. Der Speicherplatz Ihres Pakets ist voll
Ist Ihr Paket voll, kann Ihre Website keine temporären Dateien oder Sitzungen mehr schreiben. Schauen Sie im Dashboard von DirectAdmin unter Speicherplatz. Was Sie dann tun, lesen Sie in Speicherplatz voll: wo liegt der Speicherplatz?.
7. Seltener: Datenbank, Limits oder ein Hack
- Sehen Sie Error establishing a database connection? Lesen Sie Fehler beim Herstellen einer Datenbankverbindung.
- Sehen Sie einen 503 oder Resource Limit Is Reached? Dann stößt Ihr Paket an seine Rechenleistungsgrenze. Lesen Sie 503 oder „Resource Limit Is Reached“: was nun?.
- Gibt es Dateien, die Sie nicht kennen, oder leitet Ihre Website Besucher zu fremden Websites weiter? Lesen Sie Meine Website wurde gehackt: Schritt-für-Schritt-Anleitung.
Ein weißer Bildschirm ohne Meldung
Bei einem weißen Bildschirm zeigt PHP die Fehlermeldung bewusst nicht an Besucher an. Das Fehlerprotokoll aus Schritt 1 ist dann Ihre beste Quelle. Bei WordPress können Sie auch vorübergehend define('WP_DEBUG', true); in wp-config.php setzen. Setzen Sie es danach wieder auf false, sonst sehen Besucher technische Details Ihrer Website.
Andere Fehlercodes im Überblick
| Meldung | Was bedeutet das? | Wo lesen Sie weiter? |
|---|---|---|
| 403 Forbidden | Der Server weigert sich, die Seite anzuzeigen, zum Beispiel durch die Firewall Ihrer Website, Rechte oder eine fehlende Index-Datei. | Fehler 403 oder 406 beim Speichern oder Hochladen |
| 404 Not Found | Die Seite oder Datei existiert an dieser Stelle nicht. Befindet sich Ihre Website in public_html der richtigen Domain? Achten Sie auf Groß- und Kleinschreibung bei Dateinamen. | Dateimanager öffnen: die Verzeichnisse in Ihrem Paket |
| 413 Request Entity Too Large | Was Sie hochladen, ist größer als erlaubt. | Upload zu groß (Fehler 413) oder Zeitüberschreitung |
| 500 Internal Server Error | Der Code Ihrer Website bleibt hängen. | Dieser Artikel |
| 503 oder 508, Resource Limit Is Reached | Ihr Paket nutzt vorübergehend mehr Rechenleistung als erlaubt. | 503 oder „Resource Limit Is Reached“: was nun? |
| Seite von WebOké anstelle Ihrer Website | Die Domain ist noch nicht (richtig) in Ihrem Hosting-Paket eingetragen, oder der DNS zeigt noch woanders hin. | Meine Domain funktioniert nach einem Transfer oder einer Änderung noch nicht |
Zurück zu einer funktionierenden Version
Kommen Sie nicht weiter und funktionierte die Website gestern noch? Dann stellen Sie ein Backup wieder her. In Mein WebOké geht das mit WebOké Backups: Wählen Sie einen Zeitpunkt vor dem Fehler und stellen Sie nur den Ordner Ihrer Website und eventuell die Datenbank wieder her (siehe Geht das auch in Mein WebOké? WebOké Backups). Nutzen Sie Installatron, können Sie auch ein Backup von Installatron wiederherstellen (siehe Backups erstellen und wiederherstellen in Installatron).
Tipp: Mit Domain-Gesundheit auf www.weboke.de/domain-gesundheit sehen Sie auf einen Blick, ob Ihre Domain, der A-Record, die Website und das SSL-Zertifikat in Ordnung sind. Bei Website steht dann beispielsweise Antwortet mit einem Serverfehler (HTTP 500).
