Meetup #29: Fehlersuche und Debugging

Meetup Düsseldorf #28 – Gutenberg

Fehler sind leider nicht immer vermeidbar. Aber wie findet man die Ursache, wie kann man das Problem lösen und wie reduziert man zukünftig Fehler? Viele von euch hatten sich seit langem einen Abend über Debugging gewünscht. Klaus und Christian haben sich dem Thema angenommen.

Durch den Abend führten uns Klaus und Christian. Zur Vorbereitung des Meetups hatten die beiden die Community schon auf Facebook, Meetup.com und hier gefragt, mit welchen Fehlern bzw. Fehlverhalten sie sich gerade beschäftigen muss.)

Klaus und Christian

Eure Probleme

Zu Beginn des Abends besprachen wir die Fehler und Probleme, die schon vorab auf meetup.com und in unserer Facebook-Gruppe gesammelt wurden.

Besonders heiß wurden dabei folgende Fehler diskutiert:

Gutenberg

Der neue WordPress-Editor Gutenberg kam dabei immer wieder zur Sprache. Da die Weiterentwicklung von Gutenberg derzeit sehr schnell vorangeht, werden sich Lösungen hoffentlich in einem der nächsten Updates zeigen.

404 Fehler

Bspw. nachdem z.B. Produkte im WooCommerce Shop gelöscht wurden. Hier war die bevorzugt Empfehlung immer direkt Weiterleitungen z.B. über ein Plugin via Redirection einzurichten. Wer technisch versierter ist, kann auch via Yoast (Free Version) das Werkzeug nutzen um in der .htaccess Weiterleitungen zu hinterlegen (Schreibrechte vorausgesetzt; falscher Umgang kann allerdings zu Serverfehlern führen). In der Pro version von Yoast hingegen, wird man sogar beim Löschen von Produkten nach einer möglichen Weiterleitung gefragt, was deutlich komfortabler ist.
Um überhaupt herauszufinden, ob man 404 Fehler hat, kann man die Google Search Console nutzen. Bei den Weiterleitungen ist immer wichtig das dieses sinnvoll gesetzt werden, z.b. nicht mehr vorhanden Produkte auf ähnliche noch verfügbare Produkte, die passende Kategorie oder eine individuelle 404 Seite für Produkte.

Wie kann man die Mediathek automatisch ausmisten?

Hierzu gab es relativ wenig Erfahrung im Publikum. Es gibt zwar Plugins wie DNUI oder MediaCleaner. Bei der Nutzung ist allerdings Vorsicht geboten, da die meisten bezweifelten, dass wirklich immer erkannt werden kann, ob das Bild noch verwendet wird. Daher empfehlen wir auf jeden Fall vorher ein vollständiges Backup der Dateien und der Datenbank anzulegen!

Das System verstehen

Nach einer Erholungspause ging es dann weiter mit einigen Grundlagen. Was überhaupt passiert im Hintergrund, wenn man eine Webseite mit WordPress betreibt? Dazu hat uns Klaus einige Abläufe erklärt wie:

  • Server (Maschine)
  • Webserver
  • PHP
  • Datenbank
  • Source Codes
  • Zusammenspiel HTML, CSS, Javascript

Diese Abläufe helfen zu verstehen, an welcher Stelle man nach einem Fehler zuerst suchen sollte.

Was ist ein Fehler?

Grundsätzlich muss man erstmal unterscheiden, um welche Art von Fehler es sich handelt:

  • Fehler, der eine Funktion oder die ganze Seite unnutzbar macht.
  • Unerwünschtes Verhalten, was eigentlich kein direkter Fehler ist.

Erste Regel beim Auftreten eines Fehlers: DON’T PANIC
Fehler können in unterschiedlicher Ausprägung auftreten:

Showstopper

Wenn man gar nichts mehr sieht (z.B. White Screen of Death).
Wird oft durch PHP-Fehler ausgelöst z.B. nach fehlgeschlagenen Updates, Inkompatibilität zwischen Plugins oder durch veraltete Plugins.
Auch durch Fehler in der .htaccess kann die komplette Seite unnutzbar werden, z.B durch ein falsches Zeichen oder eine falsche Syntax.

Funktionseinschränkung

Z.B. können fehlende Schreibrechte dazu führen, dass Dateien nicht hochgeladen werden oder automatische Updates nicht durchgeführt werden können.
Wenn dynamischen Funktionen wie z.B. Kontaktformulare nicht mehr funktionieren, dann sind oft Javascript-Fehler verantwortlich.

Wie gehe ich mit einem Fehler um?

Um Fehlern auf den Grund zu gehen, hat uns Siggi in einem kurzen Intermezzo anhand einer Grafik ein paar Standard-Methoden des Debugging vorgestellt:

  1. Verstehe das System z.B. welche Versionen werden genutzt?
  2. Versuche Fehler zu reproduzieren um herauszufinden woran es liegen könnte.
  3. Ausführliche Fehlerbeschreibung und nicht nur „Die Seite funktioniert nicht mehr”.
  4. Einzelne Komponenten des System abschalten – z.b. Plugins – und die Veränderung beobachten.
  5. Immer nur eine Schritt nach dem anderen durchführen, um noch nachvollziehen zu können, woran es liegen könnte.
  6. Dokumentation der Änderungen, die man durchführt.
  7. Ganz simple Fehler zuerst ausschließen: Ist der Tank voll?
  8. Mal einen Kollegen fragen, um einen anderen Blick auf die Fehler zu bekommen.

Weiter ging es danach mit gängigen Lösungsmöglichkeiten bei verschiedenen Fehlerursachen:

.htaccess Datei
Datei testweise kurz umbenennen, damit sie vom Server nicht mehr verwendet wird.
Einzelne Abschnitte nacheinander aus der Datei löschen bis es wieder funktioniert, um zu ermittelt welche Stelle den Fehler verursacht.

wp-config.php
Den Debug Modus einschalten

Fehlerhafte Plugins
Das Verzeichnis des Plugins via FTP umbenennen (unter wp-content/plugins). Dadurch wird das Plugin automatisch von WordPress deaktiviert.

Wie vermeide ich Fehler?

Zum Schluss haben wir noch ein paar Strategien besprochen um Fehler in Zukunft besser zu vermeiden.

Testumgebung

Eine Test-Umgebung (oder auch Staging-Umgebung) ist in sehr vielen Fällen hilfreich, wenn man große Aktualisierungen vor sich hat. Neue WordPress-Versionen, große Plugin-Veränderungen oder Theme-Wechsel kann man bequem und in Ruhe in dieser Kopie der eigentlichen Seite testen. Eine Test-Umgebung kann keine 100% Garantie geben, aber sie ist ein guter Gradmesser für die Umsetzung im Live-System.

Für Testumgebungen gibt es verschieden Ansätze:

  • lokal auf dem eigenen Rechner: Xamp, Mamp oder Local by Flywheel
  • als Subdomain auf dem selben Server wie die Live Installation
  • als Plugin z.B. mit WP Staging (ebenfalls auf dem selben Server in einem Unterverzeichnis)

Aktuelle Versionen von WordPress, Plugins und Themes

WordPress sollte stets in der aktuellen Version laufen. Wer nicht auf WP 5.0 updaten möchte, braucht keine Sorge zu haben. WP 4.9 wird noch für einige Zeit mit Sicherheitsupdates versorgt.

Bei Plugins sieht es ähnlich aus. Alle aktiven Plugins sollten aktuell gehalten werden. Bitte prüft regelmäßig, ob sie noch Updates durch den Autor erhalten. Plugins, die sehr lang schon in einer alten Version laufen bitte im Auge behalten! Deaktivierte Plugins, die nicht mehr verwendet werden, kann man löschen.

Auch Themes erhalten Updates. In der Themeübersicht sieht man schnell auf den ersten Blick, wo ein Update fällig ist. Bitte löscht auch hier regelmäßig nicht mehr benötigte Themes!

Für alle, die etwas Aufmunterung benötigen sei das Plugin Wapuu Dashboard Pet ans Herz gelegt. Wapuu ist nur glücklich, wenn alle Updates aktuell sind.

Backups

Auch wenn es alle wissen: regelmäßige Backups! Wie ihr mit Backups auf der sicheren Seite seid, dass haben wir im 26. Meetup besprochen.

Von vielen Teilnehmern haben wir gehört, dass es ein sehr intensiver und lehrreicher Abend war. Wir hoffen, wir konnten so ein wenig die Panik bei Fehlern reduzieren und euch für die Zukunft ein paar Tipps an die Hand geben.

Hier gehts zum nächsten Meetup


Beitrag veröffentlicht

in

,

von

Schlagwörter: