So beheben Sie den 500 Internal Server Error in WordPress

Der 500 Internal Server Error in WordPress gehört zu den ärgerlichsten Fehlern, weil er keine Informationen darüber liefert, was schiefgelaufen ist. Er kann auf jeder Seite auftreten, Ihre Website komplett offline nehmen und Ihre Suchmaschinenrankings beeinträchtigen, wenn er länger als ein paar Stunden ungelöst bleibt.

Laden Sie WP STAGING herunter, um diesen und andere Fehler in Zukunft zu vermeiden. Mit dem WP STAGING-Plugin können Sie in Sekunden eine Kopie Ihrer WordPress-Website erstellen. Sie können neue Plugins, Designs und andere Updates in einer sicheren Umgebung auf dieser Staging-Site testen.

Kurzfassung: Die fünf häufigsten Lösungen für einen 500 Fehler in WordPress sind: (1) den Debug-Modus aktivieren, um das Fehlerprotokoll auszulesen, (2) die .htaccess-Datei prüfen und neu erzeugen, (3) das PHP-Memory-Limit erhöhen, (4) alle Plugins deaktivieren und einzeln wieder aktivieren und (5) die WordPress-Core-Dateien neu installieren. Beginnen Sie mit dem Debug-Modus, damit Sie wissen, welche konkrete Lösung Sie anwenden müssen.

Was ist der 500 Internal Server Error in WordPress?

Ein 500-Statuscode ist die allgemeine Art des Servers, „etwas ist schiefgelaufen" mitzuteilen. Wenn Ihr Browser eine Seite anfordert, führt der Server PHP-Code aus, um diese Seite zu erstellen. Schlägt in diesem Prozess etwas fehl, bevor eine ordnungsgemäße Antwort gebildet werden kann, antwortet der Server mit HTTP 500 statt mit der Seite selbst.

Der Fehler kann so aussehen:

Error-500

Oder er sieht so aus:

Error 500 - Internal Server Error

Das entscheidende Merkmal ist, dass der Fehler allgemein gehalten ist. Er teilt Ihnen mit, dass die Anfrage fehlgeschlagen ist, aber nicht warum. Genau das macht ihn schwerer zu beheben als einen spezifischeren Fehler wie einen 404 (Seite nicht gefunden) oder einen 403 (Zugriff verweigert). Der Rest dieser Anleitung führt Sie systematisch durch die häufigsten Ursachen.

Was verursacht einen 500 Fehler in WordPress?

Die häufigsten Ursachen sind:

  • Eine beschädigte oder fehlerhafte .htaccess-Datei
  • Erschöpfter PHP-Speicher
  • Ein Plugin- oder Theme-Konflikt, der einen fatalen PHP-Fehler verursacht
  • Beschädigte WordPress-Core-Dateien
  • Ein Fehler auf Serverebene (PHP-FPM-Absturz, Fehlkonfiguration, Dateiberechtigungen)

Ordnen Sie Ihre Situation mithilfe der folgenden Tabelle der wahrscheinlichsten Ursache und der schnellsten ersten Lösung zu:

Wann ist der 500 Fehler aufgetreten? Umfang Wahrscheinlichste Ursache Erste Lösung zum Ausprobieren
Nach der Installation oder Aktualisierung eines Plugins Gesamte Website Plugin-Konflikt Lösung 4: Alle Plugins deaktivieren
Nach dem Bearbeiten von wp-config.php oder .htaccess Gesamte Website Syntaxfehler in der Konfigurationsdatei Lösung 2: .htaccess neu erzeugen
Nach einem WordPress-Core-Update Gesamte Website Beschädigte Core-Dateien Lösung 5: Core-Dateien neu installieren
Keine kürzlichen Änderungen, gesamte Website offline Gesamte Website Speichererschöpfung Lösung 3: PHP-Memory-Limit erhöhen
Keine kürzlichen Änderungen, nur eine Seite betroffen Nur eine Seite Permalink- oder mod_rewrite-Problem Lösung 2: .htaccess neu erzeugen
Kein Zugriff auf wp-admin möglich Gesamte Website Unbekannte Ursache Lösung 1: Zuerst den Debug-Modus aktivieren

Schnelle Prüfungen für den Anfang

Bevor Sie irgendwelche Dateien anfassen, führen Sie diese beiden schnellen Schritte durch. Jeder von beiden kann einen 500 Fehler beheben, der durch einen veralteten Cache verursacht wird.

Seite erzwungen neu laden: Drücken Sie Ctrl + F5 unter Windows oder Cmd + Shift + R auf dem Mac, um die zwischengespeicherte Version zu umgehen und die aktuellste Kopie der Seite zu laden.

Browser-Cache leeren: Das Leeren des Browser-Caches schließt ein clientseitiges Caching-Problem aus, bevor Sie irgendwelche Serverdateien ändern.

  1. Google Chrome: Drücken Sie Ctrl + Shift + Delete, wählen Sie den gewünschten Zeitraum und klicken Sie auf „Daten löschen".
Browser-Cache leeren
  1. Mozilla Firefox: Drücken Sie Ctrl + Shift + Delete, wählen Sie den passenden Zeitraum und klicken Sie auf „Jetzt löschen".
Firefox-Browser-Cache leeren
  1. Apple Safari: Drücken Sie Command + Option + E, um den Cache sofort zu leeren.
  2. Microsoft Edge: Drücken Sie Ctrl + Shift + Delete, aktivieren Sie „Zwischengespeicherte Bilder und Dateien" und klicken Sie auf „Jetzt löschen".

Wenn der Fehler nach dem Leeren des Caches verschwindet, sind Sie fertig. Bleibt er bestehen, fahren Sie mit den nummerierten Lösungen unten fort.

Die folgenden Schritte sind komplexer und betreffen die Datenbank/Dateien der WordPress-Website. Um keinen weiteren Schaden zu verursachen und sofern Sie noch Zugriff auf das WordPress-Dashboard haben, erstellen Sie eine Staging-Site mit WP STAGING und versuchen Sie, den Fehler auf der Staging-Seite anstatt auf der Produktivseite zu beheben.

Mit WP STAGING können Sie eine Staging-Site erstellen, um jede Lösung sicher zu testen, bevor Sie sie auf Ihre Produktionswebsite anwenden.

Lösung 1: Den WordPress-Debug-Modus aktivieren

Der sicherste erste Schritt ist, das WordPress-Debug-Logging einzuschalten, damit Sie den genauen Fehler auslesen können, der die 500-Antwort verursacht hat. Ohne das Protokoll ist jede weitere Lösung nur Raterei. In den Support-Tickets von WP STAGING ist die häufigste erste Ursache, die wir sehen, ein Plugin-Konflikt, und das Debug-Protokoll bringt ihn sofort zum Vorschein.

Öffnen Sie Ihre Datei wp-config.php (sie liegt im Stammverzeichnis Ihrer WordPress-Installation und ist über FTP oder den Dateimanager Ihres Hosters erreichbar) und fügen Sie diese drei Zeilen hinzu:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
wp-config-Datei bearbeiten

Werfen Sie einen Blick in diesen Artikel, um eine Schritt-für-Schritt-Anleitung zur Aktivierung des WordPress-Debug-Protokolls zu erhalten.

Das Debug-Protokoll wird in /wp-content/debug.log geschrieben. Öffnen Sie die Datei und suchen Sie nach dem ersten Fehler weiter oben. Verweist das Protokoll auf ein bestimmtes Plugin, benennen Sie den Ordner dieses Plugins um, um es zu deaktivieren. Benennen Sie zum Beispiel /wp-content/plugins/woocommerce in /wp-content/plugins/woocommerce-disabled um.

Ist das Debug-Protokoll leer, prüfen Sie das Fehlerprotokoll auf Serverebene:

  • Apache: /var/log/apache2/error.log
  • Nginx: /var/log/nginx/error.log

Greifen Sie über FTP oder das Control Panel Ihres Hosters darauf zu. Einige Control Panels stellen das Fehlerprotokoll auch über ihre Benutzeroberfläche bereit.

Lösung 2: Ihre .htaccess-Datei neu erzeugen

Eine beschädigte .htaccess-Datei ist eine der häufigsten Ursachen für einen 500 Fehler auf Apache-basierten Servern. Die Datei liegt im Stammverzeichnis Ihrer WordPress-Installation, neben den Ordnern wp-admin, wp-includes und wp-content.

Datei .htaccess bearbeiten

So erzeugen Sie sie neu:

  1. Verbinden Sie sich über FTP oder den Dateimanager Ihres Hosters mit Ihrer Website.
  2. Benennen Sie die vorhandene .htaccess in .htaccess_backup um, damit Sie eine Sicherung haben.
  3. Erstellen Sie eine neue Datei mit dem Namen .htaccess und fügen Sie die Standard-Rewrite-Regeln von WordPress ein:
# BEGIN WordPress

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteBase /

RewriteRule ^index.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]

</IfModule>

# END WordPress

Laden Sie Ihre Website neu. War die beschädigte .htaccess die Ursache, ist der Fehler sofort behoben.

Alternative über den WordPress-Admin: Wenn Sie noch Zugriff auf das Dashboard haben, gehen Sie zu Einstellungen > Permalinks und klicken Sie auf „Änderungen speichern", ohne etwas zu ändern. WordPress erzeugt die .htaccess bei diesem Speichern automatisch neu.

Lösung 3: Das PHP-Memory-Limit erhöhen

PHP verarbeitet jede Seitenanfrage innerhalb eines Speicherbudgets. Wenn ein Plugin, ein Theme oder eine komplexe Abfrage dieses Budget überschreitet, antwortet der Server mit einem 500 Fehler. Aus unseren Tests in Shared-Hosting-Umgebungen ist die Erschöpfung des PHP-Speichers der häufigste serverseitige Auslöser, dem wir begegnen, wenn dem Fehler keine kürzlichen Änderungen an der Website vorausgegangen sind.

Sie können das Limit auf zwei Arten erhöhen:

Option A: Über cPanel (falls Ihr Hoster es anbietet)

  1. Melden Sie sich bei cPanel an.
  2. Öffnen Sie „Select PHP Version".
  3. Klicken Sie auf „Switch to PHP Options".
  4. Klicken Sie auf memory_limit und erhöhen Sie den Wert auf 256 oder 512 (MB), dann speichern Sie.

Option B: Über wp-config.php

wp-config-Datei bearbeiten

Öffnen Sie wp-config.php und fügen Sie diese Zeile weiter oben hinzu:

define('WP_MEMORY_LIMIT', '256M');

Speichern Sie die Datei und laden Sie Ihre Website neu. War die Speichererschöpfung die Ursache, ist der Fehler nach dem Speichern behoben.

Lösung 4: Alle Plugins deaktivieren

Plugin-Konflikte sind eine häufige Grundursache für einen 500 Fehler in WordPress. Wenn Lösung 1 im Debug-Protokoll einen Plugin-Konflikt bestätigt hat oder wenn Sie das Protokoll nicht auslesen können, identifiziert das Deaktivieren aller Plugins und das einzelne erneute Aktivieren den Übeltäter.

Wenn Sie Zugriff auf den WordPress-Admin haben:

  1. Gehen Sie im Dashboard zu Plugins.
  2. Wählen Sie alle Plugins über das Kontrollkästchen oben aus.
  3. Wählen Sie im Dropdown „Bulk Actions" die Option „Deactivate" und klicken Sie anschließend auf „Apply". WordPress Dashboard Select Plugins Deactivate plugins to troubleshoot errors in the WordPress Admin Dashboard
  4. Laden Sie Ihre Website neu. Ist der Fehler verschwunden, aktivieren Sie die Plugins einzeln wieder und laden Sie nach jedem neu, bis der Fehler erneut auftritt. Das zuletzt aktivierte Plugin ist der Übeltäter.

Wenn Sie keinen Zugriff auf den WordPress-Admin haben:

Verbinden Sie sich über FTP und benennen Sie den Plugins-Ordner um:

  1. Benennen Sie /wp-content/plugins in /wp-content/plugins-disabled um.
  2. Laden Sie Ihre Website neu. Kommt sie zurück, haben Sie einen Plugin-Konflikt bestätigt.
  3. Benennen Sie den Ordner wieder in /wp-content/plugins zurück.
  4. Deaktivieren Sie einzelne Plugins, indem Sie deren Unterordner umbenennen (benennen Sie zum Beispiel /wp-content/plugins/woocommerce in /wp-content/plugins/woocommerce-disabled um), und laden Sie nach jeder Umbenennung neu.

Lösung 5: Die WordPress-Core-Dateien neu installieren

Ist der Fehler ohne eine Plugin- oder Theme-Änderung aufgetreten, können beschädigte WordPress-Core-Dateien die Ursache sein. Sie können den Core neu installieren, ohne Ihre Inhalte, Plugins oder Themes zu überschreiben.

  1. Laden Sie die neueste Kopie von WordPress von wordpress.org herunter.
  1. Entpacken Sie das heruntergeladene Archiv.
  2. Verbinden Sie sich über FTP oder den Dateimanager Ihres Hosters mit Ihrem Server.
  3. Benennen Sie die vorhandenen Ordner /wp-admin und /wp-includes in /wp-admin-backup und /wp-includes-backup um.
  1. Laden Sie die frischen Ordner /wp-admin und /wp-includes aus dem entpackten Archiv an denselben Speicherort hoch.
  1. Laden Sie Ihre Website neu. Waren beschädigte Core-Dateien die Ursache, ist der Fehler behoben, sobald der Upload abgeschlossen ist.

Ersetzen Sie während dieses Vorgangs weder wp-config.php noch den Ordner wp-content. Diese Dateien enthalten Ihre Datenbank-Zugangsdaten und alle hochgeladenen Medien.

Lösung 6: Ihren Hosting-Anbieter kontaktieren

Wenn keine der fünf oben genannten Lösungen den Fehler behoben hat, liegt das Problem höchstwahrscheinlich auf Serverebene und nicht innerhalb Ihrer WordPress-Installation. Zu den Ursachen auf Serverebene gehören:

  • Ein PHP-FPM-Prozess, der abgestürzt oder stillschweigend gestoppt ist
  • Eine Apache- oder Nginx-Fehlkonfiguration, die während eines Server-Updates eingeführt wurde
  • Änderungen an Dateiberechtigungen, die PHP daran hindern, WordPress-Dateien zu lesen
  • Ressourcenlimits auf Serverebene, die nichts mit dem PHP-Memory-Limit zu tun haben

Kontaktieren Sie das Support-Team Ihres Hosting-Anbieters und teilen Sie die relevanten Zeilen aus dem Server-Fehlerprotokoll mit, das Sie in Lösung 1 gefunden haben. Die meisten Managed-WordPress-Hoster können 500 Fehler auf Serverebene anhand des Protokolls schnell diagnostizieren.

Wenn Ihr Hoster das Problem nicht lösen kann oder wenn 500 Fehler unter normaler Last häufig wiederkehren, ist es vielleicht an der Zeit, eine leistungsfähigere Hosting-Umgebung für die Anforderungen Ihrer Website zu prüfen.

Abonnieren Sie unseren YouTube-Kanal für weitere WordPress-Videotutorials und folgen Sie uns auf Twitter und Facebook.

Was tun, wenn keine der Lösungen funktioniert

Wenn Sie alle sechs Lösungen durchgearbeitet haben und der Fehler weiterhin besteht, grenzen Sie mit dieser Tabelle die verbleibenden Möglichkeiten ein:

Symptom Was Sie prüfen sollten
Das Debug-Protokoll ist nach der Aktivierung von WP_DEBUG leer Prüfen Sie das Fehlerprotokoll auf Serverebene (Apache- oder Nginx-Pfad aus Lösung 1); der PHP-Fehler erreicht die Protokollebene von WordPress möglicherweise nicht
Alle Plugins deaktiviert, Fehler tritt weiterhin auf Wechseln Sie über FTP zu einem WordPress-Standard-Theme (etwa Twenty Twenty-Four), indem Sie den Ordner Ihres aktiven Themes unter /wp-content/themes/ umbenennen
Fehler nur bei wp-admin, nicht im Frontend Ein admin-spezifisches Plugin oder eine Datei in /wp-content/mu-plugins/ wird möglicherweise geladen und schlägt fehl; prüfen Sie dieses Verzeichnis
Der 500 Fehler tritt nur bei einer einzigen URL auf Ein beitragsspezifischer Shortcode, ein benutzerdefiniertes Feld oder ein Block löst möglicherweise einen fatalen Fehler aus; aktivieren Sie WP_DEBUG und rufen Sie diese URL auf, um den Protokolleintrag zu erfassen
Der Hosting-Anbieter sagt, es gebe keinen Serverfehler Fragen Sie gezielt nach dem Zustand des PHP-FPM-Prozesses und danach, ob der PHP-Worker-Pool kürzlich neu gestartet wurde

Verwandte Artikel

Rene Hermenau

Autor: Rene Hermenau

Über den Autor: René Hermenau ist Gründer von WP STAGING. Er arbeitet an WordPress-Backups, Staging, Migrationen, Datenbankverarbeitung und sicheren Deployment-Workflows.