PHP Fatal error: Allowed memory size of 134217728 bytes exhausted — übersetzt: Ein PHP-Prozess wollte mehr Arbeitsspeicher, als er darf, und wurde hart gestoppt. Die krumme Zahl ist das Limit in Bytes (134217728 = 128 MB). Der Fehler hat zwei Seiten: das Limit — und den Verbraucher, der es sprengt.
Erste Hilfe: Limit anheben
Füge in die wp-config.php ein (oberhalb von „That’s all, stop editing“):
define('WP_MEMORY_LIMIT', '256M');
define('WP_MAX_MEMORY_LIMIT', '512M');
Der erste Wert gilt fürs Frontend, der zweite für den Adminbereich (Updates, Importe, Bildbearbeitung brauchen dort mehr). Greift das nicht, deckelt der Hoster das Limit auf PHP-Ebene — dann hilft ein Eintrag in der php.ini / im Hosting-Panel (memory_limit = 256M) oder eine Nachricht an den Support. Die komplette Anleitung mit allen Wegen: Memory Limit erhöhen.
Die wichtigere Frage: Wer frisst den Speicher?
128 MB sind für eine normale WordPress-Seite viel. Wird das Limit trotzdem gerissen, arbeitet etwas verschwenderisch:
- Die Fehlermeldung lesen: Hinter „exhausted“ steht immer der Ort des Geschehens:
in /wp-content/plugins/xyz/datei.php on line 123. Das ist nicht zwingend der Schuldige (er hat nur das letzte Byte verlangt), aber ein starker Hinweis — besonders, wenn derselbe Pfad wiederholt auftaucht. Wo du die Meldung findest, zeigt der Artikel Debug-Modus aktivieren. - Typische Speicherfresser: Page Builder mit riesigen Layouts, Statistik-Plugins, die Berichte im Speicher aufbauen, Import/Export-Werkzeuge, Bildergalerien, die hunderte Fotos in einem Rutsch verarbeiten, und schlecht programmierte Abfragen, die zehntausende Datensätze auf einmal laden.
- Query Monitor nutzen: Das Plugin zeigt den Speicherverbrauch jeder Seite und die Spitzenreiter unter den Komponenten. Ein Wert über 100 MB für eine normale Seite ist ein rotes Signal.
- Ausschlussverfahren: Plugins hälftig deaktivieren und den Verbrauch vergleichen — nach wenigen Runden ist der Fresser identifiziert.
Wann tritt der Fehler typischerweise auf?
- Beim Bild-Upload: Die Vorschauberechnung großer Bilder braucht ein Vielfaches der Dateigröße — siehe HTTP-Fehler beim Bild-Upload.
- Bei Updates und Backups: Kurzzeitige Spitzen — hier ist ein großzügiges Admin-Limit (WP_MAX_MEMORY_LIMIT) die richtige Antwort.
- Bei jedem Seitenaufruf: Alarmzeichen! Dann verbraucht die Website dauerhaft zu viel — Limit-Erhöhung ist hier nur Schmerzmittel, kein Heilmittel.
- Nur im WooCommerce-Backend: Berichte und Bestell-Exporte über große Zeiträume sind Speicher-Monster; Zeitraum verkleinern oder auf serverseitige Exporte wechseln.
Die ehrliche Grenze
Ein Limit von 256 MB ist vernünftig, 512 MB in Sonderfällen vertretbar. Wer aber 1 GB und mehr braucht, um eine Website auszuliefern, kaschiert ein Architekturproblem — und bezahlt es mit Ladezeit, Serverkosten und Instabilität unter Last. Die nachhaltige Reihenfolge lautet: Fresser finden → ersetzen oder konfigurieren → Limit auf vernünftigem Niveau lassen.
Im Core-Modul von Ammera Care fällt so etwas früh auf: Wir überwachen deine Website laufend und sehen im Fehlerprotokoll, wenn sich Memory-Fehler häufen — und beheben die Ursache, bevor daraus ein Ausfall wird. Alle Module ansehen.