it-swarm.com.de

Zulässige Speichergröße von 262144 Byte erschöpft (versucht, 24576 Byte zuzuweisen)

Ich wurde verrückt damit.

Ich habe die nächste Nachricht erhalten:

Allowed memory size of 262144 bytes exhausted (tried to allocate 24576 bytes)

AUFGABENLISTE  

Überprüfen Sie phpinfo (), haben Sie die richtige php.ini-Route gefunden und bearbeiten Sie sie . Ändern Sie memory_limit in

memory_limit = 128M

Stellen Sie sicher, dass der Wert memory_limit con phpinfo () mit dem Ergebnis ändert:

memory_limit    128MB   128MB

Überprüfen Sie .htaccess und hinzugefügt (nicht erforderlich)

php_value memory_limit 128M

Und auch über PHP so zu ändern (vor Fehlerzeile):

ini_set('memory_limit','128M');

Es sagt überall, dass der Speicher auf 128M eingestellt ist, aber trotzdem den Fehler erhalten?

Der Fehler befindet sich in der Swift-Bibliothek (Bibliothek zum Versenden von E-Mails) in abstractSmtpTransport.php, daher ist es nicht mein Code Int, der funktionieren soll. 

Irgendwelche Ideen???

Bearbeiten: Ja, der vorherige Neustart von Apache war abgeschlossen.

EDIT 2: @ Patrick, fügte hinzu, dass nichts wiederholt wurde

Mit niedrigerem Wert getestet, 28 MB in jeder Datei, Apache neu gestartet, gleicher Fehler (phpinfo zeigte neuen Wert)

versuchte es mit -1, dem Neustart und demselben Fehler. 

EDIT 3: Ist es nicht komisch, dass der erlaubte Speicher größer ist als der zugewiesene Speicher? (trotz der Tatsache, dass die zulässige Speichergröße unterhalb des zulässigen Arbeitsspeichers liegt)

38
monxas

Ich sehe, mein Problem ist ein bisschen anders als bei Ihnen, aber ich werde diese Antwort posten, falls sie jemandem hilft. Ich habe MB als Abkürzung anstelle von M verwendet, als ich mein memory_limit definierte, und PHP ignorierte es stillschweigend. Ich habe es in eine ganze Zahl (in Bytes) geändert und das Problem wurde gelöst.

Meine php.ini hat sich wie folgt geändert: memory_limit = 512MB in memory_limit = 536870912. Dies hat mein Problem behoben. Hoffe es hilft bei jemandem anderen! Sie können die Kurzform von php hier nachlesen.

Viel Glück!

Bearbeiten

Wie Yaodong betont, können Sie genauso einfach die richtige Abkürzung "M" verwenden, anstatt Byte-Werte zu verwenden. Ich habe meine Werte in Byte für Debugging-Zwecke geändert und habe es dann nicht weiter geändert.

120
kael

Der Wert von 262.144 Bytes ist der Schlüssel zur Diagnose. Diese magische Zahl wird in PHP - Fragen überall auftauchen. Warum? Weil dies der Wert PHP ist, dessen Speicherlimit endet, wenn Sie versuchen, das Limit mit einem Wert zu aktualisieren, den es nicht verwenden kann. Eine leere Zeichenfolge erzeugt diese Speicherbegrenzung, ebenso wie eine falsche Einheitenangabe wie "128 MB" anstelle der korrekten "128 MB".

262.144 Bytes sind genau 256 Kibibytes. Warum PHP zu diesem Wert führt, wenn er verwirrt wird, liegt mir nicht.

ist es nicht komisch, dass der erlaubte Speicher größer ist als der zugewiesene Speicher?

Bei dem angezeigten zugewiesenen Betrag handelt es sich nur um den letzten Zuweisungsversuch, bei dem der Speichergrenzwert überschritten wurde. Siehe Zulässige Speichergröße in PHP bei der Zuweisung von weniger .

7
Ethan

Sehen Sie, ob diese Antwort Ihnen helfen kann. Insbesondere die Tatsache, dass CLI ini anders sein kann, als wenn das Skript über einen Browser ausgeführt wird.

Zulässige Speichergröße von X Byte erschöpft

1
Tuan

In meinem Fall hat weder M noch G geholfen, daher habe ich zugewiesenen Speicher in Bytes konvertiert, indem Folgendes verwendet wird: https://www.gbmb.org/mb-to-bytes

4096M = 4294967296

php.ini:

memory_limit = 4294967296

1
Pratik Patel

Ich habe versucht, das Limit zu erhöhen, das Wordpress für das Hochladen von Medien festgelegt hat. Ich folgte dem Rat eines Blogs, den ich nicht erwähnen werde, um das Limit von 64 MB auf 2 GB anzuheben.

Ich habe folgendes gemacht:

Erstellt eine (php.ini) -Datei in WP ADMIN mit den folgenden Ganzzahlen:

upload_max_filesize = 2000MB
post_max_size = 2100MV
memory_limit = 2300MB

Ich habe diese Fehlermeldung sofort erhalten, als ich versuchte, mich bei meinem Wordpress-Dashboard anzumelden, um zu überprüfen, ob es funktioniert:

"Die zulässige Speichergröße von 262144 Byte ist erschöpft (es wurde versucht, 24576 Byte zuzuweisen)"

Die oben genannten Informationen in dieser Kette haben mir enorm geholfen. (Stack macht normalerweise BTW)

Ich habe die PHP.ini-Datei folgendermaßen geändert:

upload_max_filesize = 2000M
post_max_size = 2100M
memory_limit = 536870912M

Der Hauptunterschied bestand darin, nur M und nicht MB zu verwenden und das Speicherlimit hoch zu setzen.

Sobald ich die geänderte Datei PHP.ini gespeichert habe, habe ich sie gespeichert, mich erneut angemeldet und der Anmeldebildschirm wurde erneut angezeigt.

Ich ging hinein und überprüfte die Medien-Uploads.

Bild mit dem Ordner „Add New“ des twordpress-Medienordners, wobei die Grenzen als „MAXIMUM DATEIGRÖSSE DURCHLADEN: 2 GB“ angegeben sind

Ich habe Apache noch nicht neu gestartet ... aber alles sieht gut aus.

Vielen Dank an alle. 

0
Wes Candela

In meinem Fall lag es daran, dass ich einen anderen Ordner hatte, der xampp und alle zugehörigen Dateien enthielt (htdocs, php e.t.c). Als hätte ich Xampp zweimal in verschiedenen Verzeichnissen installiert und aus irgendeinem Grund wirkten sich die Konfigurationen des anderen auf mein aktuelles xampp-Verzeichnis aus und so musste ich auch die Speichergröße in der php.ini-Datei des anderen Verzeichnisses ändern.

0
daniel