„Maximum execution time exceeded" in WordPress beheben
Ein Import läuft, ein Update zieht sich, ein Backup arbeitet – und plötzlich: „Fatal error: Maximum execution time of 30 seconds exceeded.” PHP bricht ein Script ab, das länger läuft als erlaubt. Für legitime, länger laufende Aufgaben hebst du das Limit an; manchmal ist der lange Lauf aber das eigentliche Symptom.
Aktuellen Wert prüfen
Den Wert max_execution_time findest du unter Werkzeuge → Website-Zustand → Bericht → Server („Maximale Ausführungszeit von PHP”). Der Standard liegt oft bei 30 Sekunden. Für Importe, Migrationen oder große Backups ist das schnell zu wenig.
Die Ausführungszeit erhöhen
Wert in Sekunden wählen, passendes Snippet kopieren:
PHP-Limits-Generator
PHP-Limit setzen
Limit wählen, passende Datei kopieren. Alles läuft in deinem Browser.
Deine Eingaben verlassen den Browser nicht. Die Snippets werden lokal per JavaScript erzeugt.
Einordnung:
php.ini– wenn du den Server kontrollierst..htaccess– nur bei Apache mit mod_php. Bei PHP-FPM/FastCGI →.user.ininutzen..user.ini– für PHP-FPM/FastCGI/CGI.
Hinweis:
max_execution_timelässt sich nicht in derwp-config.phpsetzen. In eigenem Code geht zur Laufzeit auchset_time_limit( 300 );– das ist aber eine Ausnahme für gezielte Stellen, keine Dauerlösung.
Bei Webservern wie Nginx kann zusätzlich ein Gateway-Timeout (FastCGI) greifen, das unabhängig von PHP gesetzt ist. Bleibt der Fehler trotz höherem PHP-Wert, ist meist das der Grund – dann hilft nur der Hoster.
Wann ein höherer Wert nicht die Lösung ist
Bricht ein ganz normaler Seitenaufruf nach 30 Sekunden ab, ist nicht die Zeitgrenze das Problem, sondern eine entgleiste Abfrage oder ein hängendes Plugin. Ein höheres Limit verlängert dann nur die Wartezeit, bis es wieder kracht. Typische Verursacher sind ein Plugin, das bei jedem Aufruf externe Server anfragt und auf eine Antwort wartet, eine ungünstige Datenbankabfrage über eine riesige Tabelle, oder eine Endlosschleife in eigenem Code. In solchen Fällen lohnt die Ursachensuche über WP_DEBUG_LOG und das schrittweise Deaktivieren von Plugins mehr als jeder größere Wert.
Ausführungszeit und Memory hängen zusammen
Timeouts treten oft gemeinsam mit Speicherproblemen auf: Ein Import, der zu lange läuft, stößt häufig auch ans Memory Limit. Wenn du die Ausführungszeit anhebst, lohnt der Blick auf den Speicher gleich mit → WordPress Memory Limit erhöhen. Eine weitere Einordnung anderer Fehler liefert der Überblick zu WordPress-Fehlern.
Bricht es trotz höherem Limit ab oder willst du die eigentliche Ursache eingegrenzt haben: Schreib uns kurz – wir schauen, was so lange braucht.
Häufige Fragen
Was bedeutet 'Maximum execution time exceeded'?
PHP begrenzt, wie lange ein einzelnes Script laufen darf – standardmäßig oft 30 Sekunden. Überschreitet ein Vorgang diese Zeit, bricht PHP ihn mit der Meldung Maximum execution time exceeded ab. Das passiert typischerweise bei Importen, Migrationen, großen Backups oder aufwändigen Plugin-Operationen, die länger brauchen als das gesetzte Limit erlaubt.
Wie erhöhe ich die maximale Ausführungszeit in WordPress?
Über eine der Server-Konfigurationsdateien: php.ini, wenn du den Server kontrollierst, .htaccess bei Apache mit mod_php, oder .user.ini bei PHP-FPM und FastCGI. Dort setzt du max_execution_time auf einen höheren Wert in Sekunden. In der wp-config.php lässt sich der Wert nicht setzen. Für gezielte Stellen im eigenen Code geht auch set_time_limit, aber nur als Ausnahme, nicht als Dauerlösung.
Wo stelle ich max_execution_time ein?
Den passenden Ort bestimmt dein Server-Setup: php.ini für vollen Server-Zugriff, .htaccess nur bei Apache mit mod_php, .user.ini bei PHP-FPM, FastCGI oder CGI. Den aktuellen Wert siehst du im WordPress-Backend unter Werkzeuge, Website-Zustand, Bericht, Server. Der Generator auf dieser Seite erzeugt dir das passende Snippet für die jeweilige Datei.
Wann hilft ein höheres Zeitlimit nicht?
Wenn ein ganz normaler Seitenaufruf nach 30 Sekunden abbricht. Dann ist nicht die Zeitgrenze das Problem, sondern eine entgleiste Datenbankabfrage, ein hängendes Plugin oder eine Endlosschleife. Ein höheres Limit verlängert dann nur die Wartezeit bis zum nächsten Abbruch. In dem Fall lohnt die Ursachensuche über WP_DEBUG_LOG und das schrittweise Deaktivieren von Plugins mehr als jeder größere Wert.
Passende Leistungen
Gründer & Full-Stack-Entwickler
20+ Jahre Erfahrung in der Webentwicklung. Spezialisiert auf Laravel, WordPress und individuelle Software für den Mittelstand.