Wenn ich versuche ein Produkt anzulegen im Backend, bekomme ich immer folgende Meldung:
Fatal error: Out of memory (allocated 14680064) (tried to allocate 1245184 bytes) in /home/edvoncbe/www.edv-onlineshop.com/magento/lib/Zend/Date.php on line 2554
Auch andere Seiten kommen manchmal mit so einer Meldung.
auf dem Webserver? Da habe ich 500 MB installiert, das hat bis jetzt bei allen andern Webanwendungen ausgereicht. Mit top kann ich auch nicht erkennen, das dort beim Aufruf der Seite eine Anwendung besonders viel Speicher belegt. Im apache - error.log erscheint keine Meldung
geil wie geht das denn??? “Posted: 11 months ago” o_O
anyway: unabhängig vom INSTALLIERTEN Speicher kann man PHP natürlich nur einen begrenzten Speicher zuweisen. Sprich: PHP erlaubt aktuell die Verwendung von maximal 14 MB des verfügbaren Speichers. Erfordert eine Anwendung MEHR speicher muss man die ausdrücklich in der Konfiguration einstellen (php_memory_limit = 64M) oder - falls das erlaubt ist - während der Laufzeit erhöhen (ini_set();)
Hmm, ist aber schon komisch wenn man umrechnet…
Hast du mal ‘nen Link zu deiner phpinfo, insbesondere die verwendete PHP Version und das memory_limit währen interessant?
Fatal error: Out of memory (allocated 14680064) (tried to allocate 1245184 bytes) in /home/edvoncbe/www.edv-onlineshop.com/magento/lib/Zend/Date.php on line 2554
14680064 = 14mb
1245184 = 1,2mb
Ansonsten erstmal wie der Rico bereits gesagt hat memory_limit erhöhen und Apache restarten…
in der php.ini war memory_limit = 8m gesetzt, das habe ich jetzt mal auf 100 erhöht und den Apachen neu gestartetLeider bekomme ich damit immer noch die gleiche Fehlermeldung:
Fatal error: Out of memory (allocated 14680064) (tried to allocate 1245184 bytes) in /home/edvoncbe/www.edv-onlineshop.com/magento/lib/Zend/Date.php on line 2554
kann ich das nur über die php.ini lösen?
Wie kann ich testen ob das memory_limit auch wirklich auf 100m ist? In der phpinfo habe ich nichts gefunden.
es liegt definitiv an deiner Servereinstellung, sprich dem memory_limit von PHP. Wenn die Einstellung nicht greift, dann hast du evtl. die falsche php.ini am Wickel? Meine phpinfo zeigt auch das memory_limit mit in der Liste an, Configuration -> PHP Core -> memory_limit. Dort sollten deine 100MB stehen. Was ist es denn für ein Server? OS?
das ist ein debian/etch - root-server. Hier ist die Ausgabe der von phpinfo:
http://www.edv-onlineshop.com/
Das sind die Zeilen die ich in der php.ini verwende:
; 2005-01-06 stvo: disabled (cgiwrap takes care)
; max_execution_time = 30 ; Maximum execution time of each script, in seconds
max_execution_time = -1 ; no limit
max_input_time = 60 ; Maximum amount of time each script may spend parsing request data
memory_limit = 64MB ; Maximum amount of memory a script may consume (8MB)
Es ist die richtige php.ini, ich habe es getestet. Wenn ich den safe-mode auf on stelle, kann ich das dann in der phpinfo sehen.
Es kommt immer noch diese Fehlermeldung:
Fatal error: Out of memory (allocated 14680064) (tried to allocate 1245184 bytes) in /home/edvoncbe/www.edv-onlineshop.com/magento/lib/Zend/Date.php on line 2554
Wieso hast Du getestet, ob der SafeMode funktioniert?
Ich würde eher kontrollieren, ob die Ausgabe von phpinfo() das eingestellte MemoryLimit anzeigt..
ich habe Dein Script eben ausprobiert. Beim ersten mal bekam ich:
13860808
habe dann den memory_limit von 64mb auf 512mb erhöht, den Apachen neu gestartet. Das zeigt die php.info auch an, siehe hier: http://www.edv-onlineshop.com/
dann habe ich das Script noch mal ausgefürt, bekam aber wieder:
13860808
als Ergebnis.
Hast Du eine Ahnung was immer noch falsch sein könnte?