MAMP (PRO) und WordPress: Internal Server Error (500) beheben

Für Rails-Apps habe ich in der Vergangenheit oft Container-Software genutzt, aber zur PHP-Webentwicklung setze ich schon seit vielen Jahren auf MAMP (PRO). Nun begegnete mir heute wiederholt der „Internal Server Error“ mit dem Fehlercode 500. Das kann viele Ursachen haben, aber eine in Verbindung mit Wordpress, die sich unkompliziert beheben lässt.

Wordpress - Wallpaper

Wie behebt man den Fehler 500 bei WordPress und MAMP?

WordPress lässt sich oft bitten. Habt Ihr gerade eine WordPress-Umgebung umgezogen, oder habt Ihr Änderungen an der wp-config.php vorgenommen, dann kann es Euch passieren, dass beim Aufruf einer Webseite auf einmal nichts mehr geht.

In voller Größe (43 kB) herunterladen .
Internal Server Error, Screenshot

Mir ist dieser Fehler nun nach einigen Jahren erneut untergekommen, und statt mir gemerkt zu haben, wie ich ihn behebe, musste ich selbst erst einmal wieder recherchieren. Doch die angebotenen Lösungen waren alle viel zu komplex. Man sollte virtuelle Hosts manipulieren, Einstellungen in den Konfigurationsdateien vornehmen und den Server neu starten. Irgendwann dämmerte es mir aber, und ich erinnerte mich.

WP-Admin funktioniert, Webseite aber nicht: Permalinks sind schuld

Tatsächlich konnte ich mich ohne Weiteres im „Backend“ anmelden, aber eben keine Einzelseite aufrufen, wurde dann immer mit dem Fehler 500 konfrontiert.

In diesem konkreten Fall hilft das Öffnen der Einstellungen von WordPress. Navigiert dort zum Punkt „Permalinks“ und klickt einfach einmal auf „Änderungen speichern“. Et voilà. Es geht wieder.

Diese Vorgehensweise hilft natürlich nur, wenn nichts Ärgeres im Hintergrund nicht so will, wie es soll. Denn es kann auch andere Gründe geben, wieso man diese Fehlermeldung angezeigt bekommt.

Sich an das Problem herantasten

Als Nutzer von MAMP Pro kann man beispielsweise in der PHP-Konfiguration einfach ein Häkchen setzen, um PHP-Fehler auch auf dem Monitor auszugeben. Nutzt man nur MAMP ohne Pro, dann kann man in den Kopf der eigenen Vorlage (meist header.php) folgende Zeilen Code hinzufügen:

// PHP-Fehler ausgeben
   ini_set('display_errors', 1);
   ini_set('display_startup_errors', 1);
   error_reporting(E_ALL);

Aber genau an diesem Punkt wurde ich stutzig. Denn es kam erst gar nicht zur Ausgabe und tatsächlich hatte ich die Konfiguration von WordPress erst verändert, da ich einen neuen Host für die Installation eingerichtet hatte.