WordPress-Fehlermeldungen: was sie heißen, was zu tun ist
Eine WordPress-Fehlermeldung ist fast nie die Ursache, sondern der Ort, an dem WordPress gemerkt hat, dass etwas nicht stimmt. „Fehler beim Aufbau einer Datenbankverbindung“ sagt, dass die Datenbank nicht antwortet, nicht warum. „Der Link, dem du gefolgt bist, ist abgelaufen“ klingt nach einem veralteten Lesezeichen und heißt beim Hochladen meist, dass die Datei zu groß war. Dieses Lexikon ordnet die Meldungen, die im Alltag am häufigsten auftauchen, im deutschen Wortlaut der Übersetzung von WordPress 7.1 und nennt zu jeder den ersten Griff und den Beitrag, in dem der ganze Weg steht.
Lies den Wortlaut genau, bevor du etwas änderst. Zwei Meldungen, die ähnlich klingen, haben oft völlig verschiedene Ursachen, und der Griff, der bei der einen hilft, macht die andere schlimmer.
Die Meldungen auf einen Blick#
Steht die Seite? Die WordPress-Soforthilfe: Fehlerdiagnose und Reparatur 149 € übernimmt, Preis vorab fest, die erste Einschätzung ist kostenlos.
| Meldung (deutsch) | Übliche Ursache | Erster Griff | Ausführlich |
|---|---|---|---|
| Auf dieser Website ist ein kritischer Fehler aufgetreten | PHP-Fehler in Plugin oder Theme | Wiederherstellungs-Mail suchen, debug.log lesen | Kritischer Fehler |
| Weiße Seite, Fehler 500 ohne Text | Fehler vor dem Fehlerschutz, Cache, Prozess beendet | HTTP-Status messen | Weiße Seite |
| Fehler beim Aufbau einer Datenbankverbindung | Zugangsdaten, Datenbankserver, Last | WP_DEBUG kurz an, MySQL-Fehlernummer lesen | Datenbankverbindung |
| Diese Website ist aufgrund planmäßiger Wartungsarbeiten vorübergehend nicht verfügbar | abgebrochenes Update, .maintenance liegt noch | Datei löschen, Update zu Ende bringen | Wartungsmodus |
| Momentan wird eine andere Aktualisierung durchgeführt | Sperre eines abgebrochenen Kern-Updates | 15 Minuten warten oder Sperre löschen | unten |
| Die Antwort ist keine gültige JSON-Antwort | REST-API liefert HTML oder Fehler statt JSON | Website-Zustand prüfen, Permalinks speichern | unten |
| Der Link, dem du gefolgt bist, ist abgelaufen | Upload größer als post_max_size | PHP-Grenzen beim Hoster erhöhen | unten |
| Allowed memory size of … bytes exhausted | Speicherlimit zu knapp | WP_MEMORY_LIMIT setzen | PHP-Version |
| Du bist leider nicht berechtigt, auf diese Seite zuzugreifen | fehlende Rolle oder falsches Tabellenpräfix | Rolle mit WP-CLI prüfen | unten |
| Es fehlt ein temporärer Ordner | PHP-Einstellung upload_tmp_dir | Hoster fragen | unten |
Die Spalte „Ausführlich“ führt zu den Anleitungen mit allen Befehlen. Die übrigen Meldungen sind kürzer zu lösen und stehen hier vollständig.
Fehler aus PHP: kritischer Fehler, weiße Seite, Speicher#
„Auf dieser Website ist ein kritischer Fehler aufgetreten.“ und im Backend „Es gab einen kritischen Fehler auf dieser Website. Prüfe bitte den Posteingang der administrativen E-Mail-Adresse der Website auf Anweisungen.“ Ein fataler PHP-Fehler hat WordPress gestoppt, und der Fehlerschutz, den es seit Version 5.2 gibt, hat ihn abgefangen. Besucher sehen die kurze Fassung; die lange mit dem Hinweis auf die Mail erscheint auf der Anmeldeseite und im Backend, sobald WordPress eine Mail mit einem Link in den Wiederherstellungsmodus an die Administrator-Adresse geschickt hat. Viele Anleitungen zitieren sie als „Es gab einen kritischen Fehler auf deiner Website“; gemeint ist dasselbe. Sofortmaßnahme:
- Postfach der Administrator-Adresse samt Spam nach der Mail durchsuchen.
- Ohne Mail
WP_DEBUG_LOGeinschalten undwp-content/debug.loglesen; die letzte Zeile mitPHP Fatal errornennt Plugin oder Theme. - Den genannten Ordner per SFTP umbenennen oder mit
wp plugin deactivate name --skip-pluginsabschalten.
Der ganze Weg, auch wenn die Mail nie ankommt, steht in Kritischer Fehler auf deiner Website.
„Es gab einen kritischen Fehler auf dieser Website, der sie in den Wiederherstellungsmodus versetzt hat.“ Das sieht nur, wer über den Link aus der Mail angemeldet ist. Die Seite läuft für dich, für Besucher steht sie weiter. Unter „Plugins“ ist das fehlerhafte Plugin markiert. Deaktivieren, dann läuft die Seite auch für Besucher wieder; danach den Wiederherstellungsmodus über die Werkzeugleiste beenden.
Weiße Seite oder 500 ohne jeden Text. Hier hat der Fehlerschutz nicht gegriffen: Der Fehler sitzt in der wp-config.php, der Schutz ist abgeschaltet, der Server hat PHP hart beendet, oder ein Cache liefert eine leere Antwort aus. Erster Griff ist eine Messung, kein Eingriff: curl -sI https://deine-domain.at/ | head -1. Was die Statuscodes heißen und wie es weitergeht, steht in WordPress zeigt eine weiße Seite.
„Allowed memory size of … bytes exhausted“. Ein Plugin oder Theme braucht mehr Speicher, als PHP ihm gibt. WordPress setzt WP_MEMORY_LIMIT ab Werk auf 40 MB (Multisite 64 MB) und für das Backend WP_MAX_MEMORY_LIMIT auf 256 MB, sofern der Hoster nicht schon mehr erlaubt. Sofortmaßnahme:
- In der
wp-config.phpdefine( 'WP_MEMORY_LIMIT', '256M' );über die Zeile „stop editing“ setzen. - Kommt der Fehler wieder, liegt die Obergrenze beim Hoster (
memory_limitin PHP); dort erhöhen lassen. - Steigt der Verbrauch weiter, ist ein Plugin der Grund, nicht das Limit.
Wie die beiden Konstanten zusammenspielen und warum auch die PHP-Version eine Rolle spielt, steht in WordPress PHP-Version.
Fehler aus der Datenbank#
„Fehler beim Aufbau einer Datenbankverbindung“. Die Meldung kommt, bevor Plugins und Theme überhaupt geladen sind. Sie hat drei Ursachen: Benutzername, Passwort, Datenbankname oder Host in der wp-config.php stimmen nicht (oft nach einem Umzug oder Passwortwechsel beim Hoster), der Datenbankserver läuft nicht, oder er ist überlastet. Sofortmaßnahme:
WP_DEBUGkurz einschalten und die echte MySQL-Meldung lesen:1045heißt Zugangsdaten,2002und2005heißen Server oder Hostname.- Die vier Zeilen
DB_NAME,DB_USER,DB_PASSWORD,DB_HOSTmit dem Kundenmenü des Hosters abgleichen. - Stimmen sie, beim Hoster nach dem Datenbankserver fragen.
Die Fehlernummern im Einzelnen und die Reparatur beschädigter Tabellen: Fehler beim Aufbau einer Datenbankverbindung beheben. Diese Meldung ist auch die häufigste, die sich mit einem Handgriff beheben lässt; die Reparatur kostet 149 € fix, wenn der Handgriff nicht reicht.
Fehler aus der Update-Mechanik#
„Diese Website ist aufgrund planmäßiger Wartungsarbeiten vorübergehend nicht verfügbar. Bitte versuche es in wenigen Minuten erneut.“ Im englischen Original „Briefly unavailable for scheduled maintenance. Check back in a minute.“ WordPress legt während jedes Updates eine Datei .maintenance ins Hauptverzeichnis und antwortet so lange mit 503 und Retry-After: 600. Bricht das Update ab, bleibt die Datei liegen. Im Quelltext steht dazu eine Sicherung: Ist der Zeitstempel in der Datei älter als zehn Minuten, gilt der Wartungsmodus als beendet. In der Praxis hängen Seiten trotzdem, weil ein Cache die 503-Antwort festhält oder die Datei einen fehlerhaften Zeitstempel trägt. Sofortmaßnahme:
.maintenanceper SFTP löschen oderwp maintenance-mode deactivate.- Cache von Plugin, Hoster und CDN leeren.
- Unter „Dashboard → Aktualisierungen“ nachsehen, welches Update unvollständig ist, und es neu anstoßen.
Mehr dazu, auch wie man die Seite absichtlich und richtig vom Netz nimmt: WordPress-Wartungsmodus.
„Momentan wird eine andere Aktualisierung durchgeführt.“ Ein Kern-Update setzt in der Tabelle wp_options eine Sperre namens core_updater.lock, damit nicht zwei Updates gleichzeitig laufen. Bricht das Update ab, bleibt die Sperre stehen; WordPress gibt sie nach 15 Minuten selbst frei. Wer nicht warten will: wp option delete core_updater.lock, dann das Update erneut starten. Vorher sicherstellen, dass wirklich kein Update mehr läuft, sonst überschreiben sich zwei Vorgänge gegenseitig.
„Der Zielordner existiert bereits.“ und „Das Verzeichnis konnte nicht erstellt werden.“ Beim Installieren oder Aktualisieren eines Plugins liegt entweder ein Rest einer früheren Installation im Ordner wp-content/plugins/, oder WordPress darf dort nicht schreiben. Im ersten Fall den alten Ordner prüfen und entfernen (vorher sichern, falls es das aktive Plugin ist), im zweiten die Dateirechte von wp-content/ und wp-content/upgrade/ beim Hoster richten lassen. Welcher Benutzer dort schreibt, entscheidet die Serverkonfiguration, nicht WordPress.
Fehler im Editor und beim Hochladen#
„Die Antwort ist keine gültige JSON-Antwort.“ Die Meldung kommt aus dem Block-Editor. Er spricht mit WordPress über die REST-API unter /wp-json/ und erwartet JSON zurück; bekommt er HTML, eine Fehlerseite oder gar nichts, zeigt er genau diesen Satz. Die Ursache liegt also zwischen Editor und Server, nicht im Beitrag. Sofortmaßnahme:
- Unter „Werkzeuge → Website-Zustand“ nachsehen; steht dort „Bei der REST-API ist ein Fehler aufgetreten“, ist die Schnittstelle selbst gestört.
https://deine-domain.at/wp-json/im Browser aufrufen: Es muss JSON kommen, keine HTML-Seite und keine Sperrseite einer Firewall.- Unter „Einstellungen → Permalinks“ einmal speichern, ohne etwas zu ändern; das schreibt die Umschreibregeln neu.
- Prüfen, ob „WordPress-Adresse“ und „Website-Adresse“ unter „Einstellungen → Allgemein“ beide mit
https://beginnen.
Bleibt die Meldung, liefert oft ein Sicherheits-Plugin oder die Firewall des Hosters eine Sperrseite statt der Antwort, oder ein Plugin schreibt eine PHP-Warnung vor das JSON. Beides steht im debug.log oder im Netzwerk-Reiter der Entwicklerwerkzeuge des Browsers.
„Der Link, dem du gefolgt bist, ist abgelaufen.“ Der englische Text lautet „The link you followed has expired.“, er kommt aus der Funktion wp_nonce_ays() und antwortet mit 403. Gemeint ist: Der Sicherheitsschlüssel (Nonce) des Formulars fehlt oder ist ungültig. Nach langem Warten auf einer Seite stimmt das wörtlich. Beim Hochladen eines Themes, Plugins oder einer großen Mediendatei ist der Grund aber fast immer ein anderer: Ist die Anfrage größer als post_max_size, leert PHP laut Handbuch $_POST und $_FILES vollständig. Damit fehlt auch der Schlüssel, und WordPress meldet einen abgelaufenen Link. Sofortmaßnahme:
- Unter „Werkzeuge → Website-Zustand → Info → Server“ die Werte für
upload_max_filesizeundpost_max_sizeablesen. - Beim Hoster beide erhöhen,
post_max_sizegrößer alsupload_max_filesize, wie es das PHP-Handbuch verlangt. - Alternativ das Theme oder Plugin per SFTP nach
wp-content/themes/oderwp-content/plugins/hochladen.
Verwandt ist „… überschreitet das Upload-Limit für diese Website.“: dieselbe Grenze, nur hat WordPress sie vor dem Hochladen bemerkt.
„Es fehlt ein temporärer Ordner.“ PHP konnte die hochgeladene Datei nicht zwischenspeichern; im PHP-Handbuch ist das der Fehler UPLOAD_ERR_NO_TMP_DIR. Das ist eine Einstellung des Servers (upload_tmp_dir), die nur der Hoster richten kann. Kommt die Meldung nach einem Umzug, hat der neue Server meist einen anderen Pfad.
Fehler bei Anmeldung und Rechten#
„Du bist leider nicht berechtigt, auf diese Seite zuzugreifen.“ Der angemeldete Benutzer hat die Fähigkeit nicht, die diese Seite verlangt. Normal ist das bei einem Redakteur, der die Plugin-Seite öffnet. Ungewöhnlich ist es, wenn ein Administrator es plötzlich sieht, und dafür gibt es einen typischen Grund: WordPress speichert die Rolle eines Benutzers unter einem Schlüssel, der das Tabellenpräfix enthält, also wp_capabilities oder xyz_capabilities. Wird nach einem Umzug $table_prefix in der wp-config.php geändert, ohne die Einträge in der Datenbank mitzuziehen, hat plötzlich niemand mehr eine Rolle. Prüfen:
wp user list --fields=user_login,roles
wp config get table_prefix
Steht bei allen Benutzern eine leere Rolle, passt das Präfix nicht. Ist dagegen nur dein Konto betroffen und ein unbekanntes Administratorkonto aufgetaucht, ist das kein Rechtefehler, sondern ein Hinweis auf einen Angriff; dann weiter mit WordPress gehackt – was tun.
„Fehler: Cookies sind gesperrt oder werden von deinem Browser nicht unterstützt.“ Bei der Anmeldung setzt WordPress ein Test-Cookie. Kommt es nicht zurück, erscheint diese Meldung. Abgesehen vom Browser selbst sind die üblichen Gründe ein Wechsel zwischen www und ohne, oder zwischen http und https, während der Anmeldung. Die Variante „wegen einer unerwarteten Ausgabe gesperrt“ heißt dagegen: Irgendeine Datei hat Text ausgegeben, bevor WordPress die Kopfzeilen schicken konnte, oft ein Leerzeichen vor <?php in der wp-config.php oder in der functions.php des Themes.
Keine Meldung, aber ein Fehler#
Zwei Fälle zeigen keine WordPress-Meldung und landen trotzdem hier. Erstens Mails aus Kontaktformular, Shop und Passwort-Vergessen, die nicht ankommen. WordPress meldet dabei nichts, weil es die Mail aus seiner Sicht erfolgreich abgegeben hat; die Ursache liegt bei Absender, SPF und DKIM, siehe WordPress-Mails kommen nicht an. Zweitens Weiterleitungen auf fremde Seiten, japanische Seiten unter deiner Domain in Google oder eine Warnung im Browser. Das ist kein Fehler der Software, sondern ein Befall. Hier nichts reparieren, sondern zuerst in WordPress gehackt – was tun nachlesen, in welcher Reihenfolge vorzugehen ist.
Was nicht hilft#
WordPress neu installieren. Die meisten Meldungen haben ihre Ursache in einem Plugin, in der wp-config.php oder beim Hoster. Ein frischer Kern ändert an keinem davon etwas.
Ein altes Backup zurückspielen, ohne die Meldung zu verstehen. Bei einem Upload-Limit oder einem Datenbankpasswort kommt der Fehler mit dem alten Stand zurück. Bei einem Befall kommt der Angreifer mit zurück.
Fehlermeldungen auf der Seite anzeigen lassen. WP_DEBUG_DISPLAY oder display_errors auf einer erreichbaren Seite zeigen jedem Besucher Pfade und Versionen. Das Protokoll sagt dasselbe, nur dir.
Plugins wild löschen. Umbenennen oder deaktivieren genügt, um den Verursacher zu finden. Gelöscht ist auch die Einstellung, und manche Plugins räumen beim Löschen ihre Tabellen ab.
Wenn du es nicht selbst machen willst#
In eigener Sache: cyberscale bin ich, Stefan Haun aus Tirol. Steht die Seite wegen einer dieser Meldungen, übernimmt die WordPress-Soforthilfe für 149 € fix: Sicherung vorher, Ursache finden, reparieren, Prüfung danach. Damit die nächste Meldung gar nicht erst auftaucht, hält die WordPress-Wartung für 49 € im Monat Updates, Sicherungen und die Überwachung am Laufen.
Häufige Fragen#
Wie finde ich heraus, welcher Fehler wirklich vorliegt?
Den Wortlaut notieren, mit curl -sI den HTTP-Status messen und das Fehlerprotokoll lesen: wp-content/debug.log, wenn WP_DEBUG_LOG an ist, sonst das Fehlerprotokoll im Kundenmenü des Hosters. Der Statuscode sortiert grob (500 PHP, 503 Wartung, 403 Rechte oder Formular-Schutz), das Protokoll nennt Datei und Zeile.
Warum steht die Meldung auf Deutsch anders als in englischen Anleitungen?
Weil WordPress jede Meldung aus der Sprachdatei übersetzt. „Briefly unavailable for scheduled maintenance“ heißt in der deutschen Fassung „Diese Website ist aufgrund planmäßiger Wartungsarbeiten vorübergehend nicht verfügbar“. Wer nach einer Lösung sucht, findet mit dem englischen Original oft mehr, darum steht es hier dabei, wo es hilft.
Ist „Der Link, dem du gefolgt bist, ist abgelaufen“ ein Sicherheitsproblem?
Nein. Es ist der Schutz von WordPress gegen gefälschte Formularanfragen, der hier zu Recht anschlägt, weil der Schlüssel fehlt. Beim Hochladen fehlt er, weil PHP die zu große Anfrage verworfen hat. Die Lösung ist eine höhere Grenze beim Hoster, kein Abschalten des Schutzes.
Kann ich die Wartungsmeldung selbst gestalten?
Ja. Liegt eine Datei wp-content/maintenance.php vor, zeigt WordPress sie statt der Standardmeldung. Bis einschließlich 7.1 muss diese Datei den Status 503 und Retry-After selbst senden; laut Quelltext setzt WordPress diese Kopfzeilen erst ab Version 7.2 vor dem Laden der Datei. So sehen Besucher eine Seite mit Logo und Telefonnummer, und Suchmaschinen wissen, dass es vorübergehend ist.
Wann ist eine Fehlermeldung ein Zeichen für einen Hack?
Wenn sie nach keiner Änderung auftritt, wenn das Protokoll eine Datei nennt, die du nie installiert hast, oder wenn ein unbekanntes Administratorkonto existiert. Dann nicht reparieren, sondern zuerst sichern und die Schritte in „WordPress gehackt“ durchgehen.
Stand 13.10.2026. Deutscher Wortlaut aus dem Sprachpaket de_DE für WordPress 7.1.3 (downloads.wordpress.org), englische Originale und Verhalten aus dem WordPress-Quelltext, Grenzen aus dem PHP-Handbuch, alles an diesem Tag gelesen.
Quellen (12)
- Deutsches Sprachpaket für WordPress 7.1.3: Wortlaut aller zitierten Meldungen
- WordPress-Quelltext, wp-includes/load.php:
wp_maintenance()mit503undRetry-After: 600,wp-content/maintenance.php(Kopfzeilen davor seit 7.2.0),wp_is_maintenance_mode()mit Ablauf nach zehn Minuten - WordPress-Quelltext, wp-includes/functions.php:
wp_nonce_ays(), „The link you followed has expired.“, Antwortcode403 - WordPress-Quelltext, wp-admin/includes/class-core-upgrader.php und class-wp-upgrader.php: Sperre
core_updater.lock, 15 Minuten - WordPress-Quelltext, wp-includes/class-wp-fatal-error-handler.php: welche Fassung der Meldung wann erscheint
- WordPress-Quelltext, wp-includes/default-constants.php:
WP_MEMORY_LIMIT40M (Multisite 64M),WP_MAX_MEMORY_LIMIT256M - WordPress-Quelltext, wp-includes/class-wp-user.php: Rollenschlüssel aus Tabellenpräfix und
capabilities - Gutenberg-Quelltext, packages/api-fetch/src/utils/response.ts: Fehler
invalid_json, „The response is not a valid JSON response.“ - PHP-Handbuch: php.ini-Direktiven:
post_max_sizegrößer alsupload_max_filesize, bei Überschreitung leere$_POSTund$_FILES - PHP-Handbuch: Fehlermeldungen beim Hochladen:
UPLOAD_ERR_NO_TMP_DIR - WordPress Advanced Administration: Debugging in WordPress:
WP_DEBUG,WP_DEBUG_LOG,WP_DEBUG_DISPLAY - Leistungen und Preise von cyberscale: WordPress-Soforthilfe, WordPress-Wartung, Stand 13.10.2026
Weiterlesen
Kommentare
Gespeichert werden nur dein Name und dein Text — keine E-Mail-Adresse, keine IP-Adresse, kein Cookie. Jeder Kommentar wird vor der Veröffentlichung gelesen; das dauert meist einen Tag. Näheres in der Datenschutzerklärung.