WordPress Troubleshooting

Nun, vielleicht kennen Sie diese Situation. Der schöne neue Webauftritt ist endlich online, alles funktioniert bestens und von Ihren Besuchern bekommen Sie positives Feedback. Doch dann, ganz plötzlich und unerwartet, folgt der Rückschlag: Die Seite ist …weg! Vielleicht ist eine Fehlermeldung zu sehen, vielleicht aber auch gar nichts mehr. Jetzt geht es darum, herauszufinden was passiert ist. Ich habe Situationen wie diese in den letzten Jahren immer wieder erlebt und im folgenden die häufigsten Probleme und Lösungen zusammengefasst. Ich hoffe, dass Sie ihnen weiterhelfen. Oder, ganz im Murphys Sinne, Ihnen einen Eindruck vermitteln, was alles schiefgehen kann…

Etwas wichtiges möchte ich hier vorausschicken: WordPress funktioniert im Allgemeinen sehr zuverlässig und ohne Störungen. Ich betreue Webseiten, die 10 Jahre oder älter sind, mein Blog stammt aus dem Jahr 2005 – und er lief immer. Wichtig ist es, alle Komponenten (WordPress, Themes, Plugins) aktuell zu halten. Ferner sollte die Serversoftware (PHP, MySQL) auf dem neusten Stand sein. Der Webseiten-Zustand, den Sie in den Werkzeugen finden, gibt Ihnen dazu mehr Informationen.

Typische Fehlermeldungen

«500 Internal Server Error» – Diese Meldung kann verschiedene Ursachen haben: PHP Laufzeitfehler, Serverfehler, Fehler beim Auswerten der htaccess Datei.

Weisser Bildschirm (auch «White Screen of Death» genannt) – Damit erhalten Sie leider keinerlei Hinweis, was passiert ist. Wie beim 500 Fehler (siehe oben) ist es ratsam, die PHP Fehlermeldungen anzuzeigen. Wie dies geht, erfahren Sie weiter unten.

Theme/Plugin Fehlermeldung – Möglicherweise ging beim Update eines Themes oder Plugins etwas schief, eine spezifische Fehlermeldung weist auf das Problem hin und gibt vielleicht sogar Hinweise zur Problembehebung. Unlängst gab es von einem WordPress Mitbewerber eine Werbekampagne, bei der der Zeigefinger auf diese Update-Fehler gerichtet wurde! Die Wahrheit ist, dass Fehler dieser Art eher selten sind.

Nachsehen, was schief läuft

Für die meisten Webserver Produkte gibt es Verwaltungswerkzeuge mit zumeist beträchtlichem Umfang; das vermutlich bekannteste heisst Plesk, deshalb werde ich im Folgenden dieses für die Beispiele verwenden. Wenn zu Ihrem Webserver ein anderes Tool gehört, sehen Sie in der Dokumentation nach. Das Anzeigen der Logdateien des Webservers gehört zu den Basisfunktionen und sollte leicht aufzufinden sein.

Loggen Sie sich in Plesk ein, sicher haben Sie dies schon mehrfach gemacht. Etwa als Sie WordPress eingerichtet oder neue Mail Adressen angelegt haben. Nun klicken Sie im Menu auf die Option «Dateien» und dann auf die Datei error_log. Scrollen Sie zum Ende dieser Datei, wo Sie nun die letzten Fehler sehen. Es ist durchaus möglich, dass Sie hier einen Fehler finden, der eindeutig auf das Problem hinweist! Zum Beispiel: «Syntax Error in plugins/lefthander/tools.php on line 1171». Hier gibt es ein Problem mit dem Plugin Lefthander, möglicherweise konnte das letzte Update nicht abgeschlossen werden. Weiter unten lesen Sie, wie Plugins vorübergehend deaktiviert werden können!

Plesk: Ein Blick auf die Logdateien.

DEBUG Modus aktivieren

Einer der ersten Massnahmen zur Fehlerfindung besteht nach dem Anzeigen der Logdateien auch das Aktivieren des WordPress-DEBUG Modus. Möglicherweise erscheinen hier Hinweise, die im Log nicht zu sehen sind! Den Debug-Modus können Sie wie folgt aktivieren: Öffnen Sie mittels FTP (siehe unten) die Datei wp-config.php im WordPress Stammordner. Suchen Sie in dieser Datei die folgende Zeile:

define('WP_DEBUG', false);

Ändern Sie nun false in true, speichern Sie die Datei und laden Sie dann Ihre Seite noch einmal im Webbrowser. Nun werden am Beginn der Seite Fehlerneldungen angezeigt, die Rückschlüsse auf das Problem geben können. Ändern Sie den Werte zurück auf false, sobald Sie den Fehler gefunden haben.

Prüfen, ob das Dashboard noch funktioniert

Stellen Sie als nächstes fest, ob Sie das Dashboard der Webseite noch aufrufen können, sie erreichen dieses durch die Eingabe des Seitennamens im Browser, gefolgt von /wp-admin, also zum Beispiel hockey-masters.ch/wp-admin. Wird das Dashboard angezeigt, können Sie das Problem vermutlich in wenigen Minuten lösen, indem Sie alle Plugins auf den neuesten Stand bringen. Verhält sich ein Plugin störrisch, können Sie auch noch folgendes versuchen: Deaktivieren Sie das Plugin und löschen Sie es dann komplett. Daran anschliessend können Sie es neu installieren.

Plugins deaktivieren

Wenn die Fehlermeldungen nicht eindeutig auf ein Problem hinweisen und Sie auch das Dashboard nicht mehr erreichen, ist es Zeit für den ersten «chirurgischen Eingriff». Dieser besteht darin, die Plugins zu deaktivieren. Am besten eines nach dem anderen, so finden Sie den Ruhestörer am schnellsten! Die Vorgehensweise ist simpel: Deaktivieren Sie ein Plugin, Laden Sie Seite neu und testen Sie, ob dies den Fehler behebt. Wenn nicht, deaktivieren Sie das nächste Plugin.

Um Plugins zu deaktivieren gibt es drei Möglichkeiten: 1. Im Dashboard, 2. Mit FTP, 3. In der Datenbank. Ich werde Ihnen im Folgenden die zweite Methode kurz vorstellen, das Dashboard erreichen Sie ja nicht mehr und Methode 3 ist etwas, sagen wir knifflig… Für einen FTP Zugriff benötigen Sie als erstes ein FTP Programm, das freie Filezilla passt eigentlich immer. Installieren Sie es, falls Sie dies noch nicht getan haben und loggen Sie sich dass auf Ihre Webseite ein. Die Login Daten finden Sie in den Unterlagen Ihres Hosting Anbieters. Suchen Sie nun in Ihrem Web Verzeichnis den Ordner wp-content, darin den Ordner plugins. Nun befinden Sie sich genau dort, wo alle Plugins installiert sind:

Filezilla zeigt den Ordner mit den Plugins

💡 Tipp: Bei einigen Hosting Anbietern gehört ein FTP Client zum Service. Wenn Ihr Hoster zum Beispiel Plesk verwendet, können Sie in der Dateiverwaltung sofort einzelnen Dateien öffnen und verändern.

Um ein Plugin mit Filezilla zu deaktivieren gibt es verschiedene Möglichkeiten; Sie können es löschen (nicht optimal), in einen anderen Ordner verschieben (besser) oder die Zugriffsrechte ändern. Dies ist der einfachste Weg – uns so gehts: Markieren Sie einen Plugin Ordner, zum Beispiel coblocks, wie hier im Beispiel. Klicken Sie als nächstes die rechte Maustaste, um das Kontextmenu zu öffnen und wählen Sie hier «Dateiberechtigungen». Im folgenden Dialog löschen Sie alle Zugriffsrechte für den Besitzer, die Gruppe und für «Öffentlich». Die Unterordner müssen Sie nicht einbeziehen, es genügt, wenn nur der Plugin Order selbst gesperrt wird.

Bestätigen Sie dann die Änderung und laden Sie die WordPress Seite neu. Wenn dies die Störung nicht behebt, gehen Sie zum nächsten Plugin. Beobachten Sie bei jeden Reload der Seite auch die Logdatei mit den Fehlern; es könnte sein, dass plötzlich neue Hinweise auftauchen!

Haben Sie das kaputte Plugin gefunden, können Sie es löschen und hinterher im Dashboard neu installieren. Um ein unschuldiges Plugin wieder zu aktivieren, stellen Sie die Zugriffsrechte wieder her: Besitzer: Lesen, Schreiben, Ausführen; Gruppe: Lesen, Ausführen; Öffentlich: Lesen, Ausführen. Das vorübergehende Deaktivieren mit der hier beschriebenen Methode führt zu keinen Folgeproblemen; sobald das Plugin wieder geladen werden kann, funktioniert es wieder wie vorher.

.htaccess Datei kontrollieren

Dies ist eine etwas ungewöhnliche Datei in Ihrem WordPress Stammordner – und sie ist ungewöhnlich wichtig! Der Dateiname beginnt mit einem Punkt, was bei UNIX und Linux bedeutet, dass sie verborgen (hidden) ist; sie wird nur angezeigt, wenn dies explizit mit dem ls Kommando verlangt wird.

.htaccess ist eine Datei, die vom Apache Webserver ausgewertet wird, und grundlegende Angaben enthält, wie die WordPress Seite vom Apache Server an den Browser ausgeliefert wird. Die gute Nachricht an dieser ‚Gschicht ist: Normalerweise brauchen Sie sich nicht um diese Datei zu kümmern, sie wird von WordPress automatisch erstellt. Und hier kommt die weniger gute Nachricht: Wenn diese Datei einen Fehler enthält, wird Ihre Seite vermutlich nicht mehr angezeigt und mit einem «Internal Server Error» quittiert. In so einem Fall ist es am besten, wenn Sie mit FTP eine Kopie dieser Datei anlegen und sie dann auf dem Server löschen. In den meisten Fällen müssen Sie hinterher noch folgendes tun: Wählen Sie im Dashboard den Menupunkt Einstellungen > Permalinks. Ihre aktuelle Einstellung sollte immer noch angezeigt werden. Klicken Sie auf Änderungen speichern, damit wird die .htaccess Datei neu erstellt.

Und gleich noch ein wichtiger Hinweis: Es gibt Plugins, die diese Datei ebenfalls verändern, Wordfence oder Ninja Firewall zum Beispiel. In diesem Fall bleibt Ihnen nichts anders übrig, als diese Plugins noch einmal zu konfigurieren!

„Disk full“?

Eine volle Disk (oder ein agelastetes Quota für Ihre Webserver Produkt) ist ein zuverlässiger Garant dafür, dass die Seite eher früher als später nicht mehr tun wird! Kontrollieren Sie deshalb regelmässig, ob noch genügend Speicherplatz für die WordPress Dateien und für die MySQL Datenbank zur Verfügung stehen. Um wieder auf Plesk zu kommen: Hier sehen Sie in der Übersicht, wieviel Platz Ihnen noch zur Verfügung steht.

„Falsche PHP-Version“?

Kontrollieren Sie die PHP Version, die aktuell verwendet wird. WordPress ist in bezug auf die PHP enorm grosszügig; es werden auch alte Versionen klaglos unterstützt, die eigentlich nicht mehr verwendet werden dürften. Es gibt aber Plugins und Themes, die auf Versionsänderungen bei PHP empfindlich reagieren.

FTP Dialog beim Aktualisieren

Klickt man sich durch die WordPress Support-Foren, ist dies ein immer wieder diskutiertes Thema: Beim aktualisieren oder bei der Neuinstallation eines Themes oder Plugins öffnet sich plötzlich ein Dialog und fragt nach den Zugangsdaten. Bei Version 5.9 sieht er so aus wie im Screenshot rechts.

Nun ist es so, dass WordPress grundsätzlich keinen FTP Zugang benötigt, das CMS kann alle Dateien selbst erstellen, ändern und auch wieder löschen. Es kann dies aber nur dann, wenn es dazu genügend Rechte auf dem Dateisystem hat. Fehlen diese Rechte, dann zeigt WordPress in einem Akt der Verzweiflung diesen Dialog an…

Grundsätzlich ist es nun möglich, die FTP Zugangsdaten einzugeben, und den Vorgang fortzusetzen. Viel besser wäre es aber, zu prüfen weshalb WordPress im Ordner auf dem Server keine Schreibrechte hat. Starten Sie dazu wie oben beschrieben die Dateiverwaltung in Plesk. Alternativ können Sie einen FTP Client wie Filezilla verwenden. Wechseln Sie dann in den Ordner, in dem WordPress installiert ist. Hier ist ein Beispiel wie die Datei wp-config.php typischerweise aussieht:

-rw-r--r-- 1 webuser webgroup 2811 Feb 10 09:39 wp-config.php

„webuser“ ist hier der Besitzer der Datei, das sollte derselbe Benutzername sein, mit dem Sie per FTP einloggen. Wichtig sind die Zugriffsflags, die ganz links angezeigt werden, es sind immer Paare aus drei Buchstaben für den Besitzer der Datei (webuser), die Gruppe (webgroup) und für alle anderen (oft auch „Welt“ genannt). Die drei Buchstaben haben jeweils folgende Bedeutung: r=Leserecht, w=Schreib-/Löschrecht, x=Ausführen erlaubt. In unserem Beispiel hat also der Besitzer der Datei Lese- und Schreibrechte. Gruppenmitglieder und alle anderen dürfen nur lesen:

Besitzer: rw-
Gruppe: r–
Welt (alle anderen): r–

Verwirrend mag das erste „-“ in der Liste sein, es besagt aber nur, das dies eine Datei und kein Verzeichnis (d) ist.

Stellen Sei nun sicher, dass der Besitzer der Dateien in allen Ordnern und Dateien Schreibrechte hat. Bei der Plesk Dateiverwaltung geht das so: Klicken Sie bei einer Datei oder einem Ordner ganz rechts auf das Hamburger Menu und wählen Sie den Menupunkt Berechtigungen ändern.

Letzte Aktualisierung: 31. Januar 2024