Website Header

500 Internal Server Error: Ursachen finden und beheben

Die Meldung 500 Internal Server Error bedeutet: Der Server hat Ihre Seite aufrufen wollen und ist dabei gescheitert. Mehr verrät sie nicht. Das klingt nach einem großen Problem, ist aber fast immer ein kleines. In den meisten Fällen steckt eine einzelne Datei dahinter, ein frisch aktualisiertes Plugin oder eine geänderte PHP-Einstellung.

Die gute Nachricht: Die Ursache steht meist schwarz auf weiß im Fehlerprotokoll Ihres Webspace. Wer weiß, wo es liegt, findet den Fehler in wenigen Minuten. Haben Sie noch nie mit Dateien auf dem Server gearbeitet, reichen Ihnen die drei Fragen im nächsten Abschnitt. Mit den Antworten kann der Support sofort loslegen.

Was hinter dem 500 Internal Server Error steckt

Die Zahl 500 gehört zu einer Gruppe von Statuscodes, die alle ein Problem auf dem Server melden. Die Unterschiede helfen bei der Suche.

Die 500er-Fehler: 500 heißt, der Server ist gescheitert, oft wegen .htaccess, PHP-Fehler oder Speicher, 502 heißt, ein vorgeschalteter Server bekam keine Antwort, 503 heißt, der Dienst ist nicht verfügbar, etwa wegen Wartung, 504 heißt, die Antwort kam zu spät

Bei 502, 503 und 504 liegt die Ursache öfter beim Hoster oder bei der Last. Der 500 Internal Server Error dagegen geht in den meisten Fällen auf etwas zurück, das auf Ihrem Webspace liegt. Deshalb können Sie ihn auch meist selbst beheben.

Zuerst drei Fragen

Bevor Sie Dateien anfassen, klären Sie den Rahmen. Das spart oft die ganze Suche.

Was haben Sie zuletzt geändert? Ein Update, ein neues Plugin, eine geänderte Einstellung im Kundenmenü. Tritt der Fehler direkt danach auf, ist das mit großer Wahrscheinlichkeit die Ursache. Machen Sie die Änderung rückgängig, wenn das geht.

Betrifft es die ganze Seite oder nur einen Teil? Läuft die Startseite, aber nicht der Login oder der Bestellabschluss im Shop? Dann liegt es wahrscheinlich an einem Plugin oder einer einzelnen Funktion.

Sehen andere den Fehler auch? Prüfen Sie mit dem Handy über das Mobilfunknetz. Erscheint die Seite dort normal, liegt das Problem eher am eigenen Rechner oder Netz. Für diesen Fall hilft die Anleitung Website nicht erreichbar weiter.

Das Fehlerprotokoll lesen

Jeder Webspace schreibt Fehler in ein Protokoll. Sie finden es im Kundenmenü des Hosters, meist unter Logs, Protokolle oder Statistik. Bei manchen Anbietern liegt es zusätzlich als Datei auf dem Webspace.

Gekürzte Beispiele: Invalid command deutet auf die .htaccess, Allowed memory size exhausted auf zu wenig PHP-Speicher, Parse error auf einen Tippfehler in einer Datei, Call to undefined function auf ein Plugin, das nicht zur PHP-Version passt

Suchen Sie den Eintrag mit der Uhrzeit, zu der Sie die Seite aufgerufen haben. Lösen Sie den Fehler bewusst noch einmal aus, wenn Sie unsicher sind. Der Pfad in der Meldung zeigt, wo das Problem liegt. Steht dort wp-content/plugins und dahinter ein Ordnername, kennen Sie den Verursacher schon.

Zeigt das Kundenmenü kein Protokoll, schalten Sie das von PHP selbst ein. In vielen Tarifen geht das mit der Zeile log_errors = On in einer Datei .user.ini im Hauptordner. Per SSH zeigt tail -n 50 mit dem Namen der Protokolldatei die letzten Einträge.

Bei WordPress können Sie zusätzlich das eigene Fehlerprotokoll einschalten. Öffnen Sie dazu die Datei wp-config.php im Hauptordner von WordPress. Suchen Sie die Zeile define( 'WP_DEBUG', false ); und ersetzen Sie sie durch diese drei Zeilen:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

WordPress schreibt die Fehler dann in die Datei debug.log im Ordner wp-content. Schalten Sie das nach der Suche wieder ab und löschen Sie die Datei. Sie kann Pfade und Details enthalten, die niemand Fremdes sehen soll.

Die Ursachen der Reihe nach ausschließen

Hilft das Protokoll nicht weiter oder haben Sie keinen Zugriff darauf, gehen Sie diese Schritte durch. Sie brauchen dafür ein SFTP-Programm und die Zugangsdaten aus dem Kundenmenü. Wie Sie beides einrichten, zeigt SFTP Zugang.

Haben Sie noch nie per SFTP eine Datei umbenannt, ist hier ein guter Punkt, den Support oder Ihren Webdesigner einzuschalten. Die Antworten auf die drei Fragen von oben und ein Bildschirmfoto der Meldung helfen ihm am meisten.

Sechs Schritte: Fehlerprotokoll lesen, .htaccess umbenennen, Plugins abschalten, Standard-Theme erzwingen, PHP-Version und Speicher prüfen, Backup einspielen oder Support fragen

Die .htaccess

Diese unscheinbare Datei im Hauptordner steuert Weiterleitungen und andere Regeln des Servers. Schon ein falsches Zeichen löst einen 500 Internal Server Error für die ganze Seite aus. Benennen Sie sie per SFTP in .htaccess-alt um und laden Sie die Seite neu. Ist der Fehler weg, liegt es an dieser Datei.

Bei WordPress legen Sie danach unter Einstellungen, Permalinks mit einem Klick auf Speichern eine frische Fassung an. Eigene Regeln, etwa Weiterleitungen, übertragen Sie anschließend einzeln aus der alten Datei.

Plugins

Kommen Sie nicht mehr ins Dashboard, schalten Sie die Plugins über den Dateizugang ab. Benennen Sie den Ordner wp-content/plugins in plugins-aus um. WordPress findet dann keine Erweiterungen mehr und lädt ohne sie. Läuft die Seite wieder, geben Sie dem Ordner den alten Namen zurück. Dann aktivieren Sie die Plugins im Dashboard einzeln, bis der Fehler wieder auftritt.

Das Theme

Liegt es nicht an den Plugins, kann das aktive Theme schuld sein, oft nach einer Änderung an der Datei functions.php. Benennen Sie den Ordner des Themes unter wp-content/themes um. WordPress weicht dann auf ein installiertes Standard-Theme aus, sofern eines vorhanden ist.

PHP-Version und Arbeitsspeicher

Wurde die PHP-Version kürzlich gewechselt, vom Hoster oder von Ihnen, stellen Sie im Kundenmenü testweise die vorherige ein. Läuft die Seite dann, ist ein Plugin oder das Theme nicht mit der neuen Version verträglich. Aktualisieren Sie es und wechseln Sie danach erneut.

Meldet das Protokoll zu wenig Speicher, erhöhen Sie das PHP-Speicherlimit im Kundenmenü. Stößt der Tarif dabei an seine Grenze, kann das ein Zeichen sein, dass er zu klein geworden ist. Wo die Grenzen beim geteilten Server liegen, erklärt Shared Hosting.

Dateirechte

Seltener sind falsche Rechte die Ursache, etwa nach einem Umzug. Ordner stehen normalerweise auf 755, Dateien auf 644. Rechte wie 777 erlauben jedem alles und führen bei vielen Hostern sogar selbst zu einem Fehler.

Wenn nichts davon hilft

Dann ist der Zeitpunkt für das Backup oder den Support gekommen. Ein Backup vom Tag vor dem Fehler stellt den letzten funktionierenden Stand her. Was Sie danach erneut einspielen, wählen Sie bewusst aus. Wie lange der Hoster Sicherungen aufbewahrt, steht unter Website Backup.

Schreiben Sie dem Support gleich, welche Adresse betroffen ist und seit wann. Nennen Sie auch die Schritte, die Sie schon versucht haben. Fragen Sie ausdrücklich nach einem Blick in das Protokoll des Servers. Der Hoster sieht dort manchmal mehr als Sie im Kundenmenü.

Ist der Fehler behoben, rufen Sie die wichtigsten Seiten einmal auf. In einem Shop gehört eine Testbestellung dazu, bis die Bestätigungsmail ankommt.

FAQ zum Fehler 500

Zwei der Antworten betreffen Fehler, die nur zeitweise oder nach einem Angriff auftreten.

Schadet ein 500 Internal Server Error meinem Google-Ranking?

Ein kurzer Ausfall kaum. Liefert die Seite über Tage einen Fehler, kann Google Seiten aus dem Index nehmen. Deshalb lohnt es sich, schnell zu handeln. In der Search Console zeigt der Bericht zur Indexierung, bei welchen Adressen Google auf einen Serverfehler gestoßen ist.

Kann ein Hackerangriff einen Fehler 500 auslösen?

Ja, wenn Angreifer Dateien verändert haben. Finden Sie im Protokoll Dateien, die Sie nicht kennen, oder geänderte Dateien im Hauptordner, lesen Sie den Ratgeber Website gehackt.

Der Fehler tritt nur ab und zu auf. Woran liegt das?

Oft stößt die Seite zu Spitzenzeiten an ein Limit des Tarifs, etwa bei Speicher oder Prozessen. Das Protokoll zeigt, ob es zu bestimmten Uhrzeiten gehäuft auftritt.

Ich habe kein WordPress. Gilt das trotzdem?

Ja. Protokoll, .htaccess, PHP-Version und Dateirechte betreffen jede Seite auf einem Webspace. Nur die Schritte zu Plugins und Theme sind WordPress-spezifisch. Andere Systeme haben aber ähnliche Erweiterungen, die Sie auf dieselbe Weise abschalten können.

Damit der Fehler nicht wiederkommt

Die meisten Fälle entstehen beim Aktualisieren. Wer dabei ein paar Gewohnheiten pflegt, sieht die Meldung 500 Internal Server Error selten wieder:

  • vor größeren Updates eine Sicherung anlegen, die Sie auch zurückspielen können,
  • Updates nicht kurz vor Feierabend oder vor dem Wochenende einspielen,
  • bei Shops und wichtigen Seiten neue Versionen zuerst auf einer Testkopie ausprobieren,
  • die PHP-Version bewusst wechseln und danach kurz alle wichtigen Seiten aufrufen,
  • Änderungen an .htaccess und functions.php nur mit einer Kopie der alten Fassung daneben.

Für Shops ist das besonders wichtig, weil ein Fehler im Bestellabschluss sofort Umsatz kostet. Einen Ausfall bemerken Sie so vor Ihren Kunden: Ein Website Monitoring ruft die Seite regelmäßig auf und meldet jeden 500 Internal Server Error sofort.

Updates und PHP-Wechsel laufen außerdem nur dann reibungslos, wenn der Tarif ein paar Voraussetzungen erfüllt. Welche das sind, können Sie jetzt in den Anforderungen für WordPress Hosting nachlesen.