Cache ist an, aber var / cache ist leer?

16

Ich habe ein Magento 1.9.0.1 und alle Caches sind eingeschaltet. Warum ist es var/cacheleer? Ich kann den Cache nur aus dem Backend leeren, aber wenn dieser kaputt ist, habe ich ein Problem.

Wo schreibt Magento die Cache-Dateien?

Fabian Blechschmidt
quelle
Dies kann auch ein Problem mit Berechtigungen / Benutzern / Gruppen sein.
Dan Norris

Antworten:

15

Könnte auch sein, Sie verwenden einen anderen Cache-Speicher wie memcached,Redis

Sander Mangel
quelle
Ja, wenn Magent Redis / Memcached als Cache-Speicher verwendet, wird es nicht im Var / Cache-Ordner gespeichert
Amit Bera
Wo spart es dann?
Black
13

Wenn Sie ein varVerzeichnis oder sogar ein var/cacheVerzeichnis haben, Magento jedoch nicht darauf schreiben kann, ermittelt Magento sys_get_temp_dir()anhand dieses Verzeichnisses einen geeigneten Speicherort für die Caching-Dateien.

Oft ist dies /tmp/und führt zu /tmp/magento/var/cache(Danke an fschmengler)

Fabian Blechschmidt
quelle
5
in diesem Fall ist das Cache-Verzeichnis/tmp/magento/var/cache
Fabian Schmengler
können Sie bitte auf magento.stackexchange.com/questions/94638/… schauen und antworten. Ich hoffe, Sie können genug Informationen geben
Schmetterling
Es hilft mir wirklich
Amit Bera
Anstatt dankbare Kommentare zu verfassen, stimmen Sie bitte hoch, um den Kommentarbereich für "echte" Kommentare und Fragen zu verlassen :)
Fabian Blechschmidt
Ich war dies bereits in der Vergangenheit getan .. so kein upvote diesmal :)
Amit Bera
6

Ich bin auf dieses Problem gestoßen, als Magento die Cache-Datei in einen /tmp/magento/var/cacheOrdner schreibt .

Dies ist ein seltsames Problem. Ich hatte dieses SELinux-Problem mit folgendem Befehl gelöst.

$ sudo restorecon -R /var/www/html
$ sudo setsebool -P httpd_unified 1
Mufaddal
quelle
3

Wen es betrifft. Jede Datei, die mit " .xml" endet, kann und wird verwendet.
Es ist nicht genug, nur die XML - Datei zu etwas umbenennen wie oldsomething.xmlman so etwas tun muß , local.xml.backwenn die Datei nicht einen mit Punkt XML beenden. Verlasse local.xmlund oldlocal.xmllade beide Dateien.

Ich weiß nicht genug über das Innenleben, um zu wissen, warum das so ist, aber ich habe es getestet, um zu wissen, dass es wahr ist. Sie können dies beweisen, indem Sie in das umbenannte XML etwas einfügen, das Magento zum Erliegen bringt, und Magento funktioniert nicht mehr.

Vielleicht unterscheidet der Magento-Code nicht den Dateinamen, sondern nur die Erweiterung an einem bestimmten Ort?

Meine Website ist immer noch auf Magento 1.6.2.0
Zu schüchtern für ein Update (es ist nicht kaputt), aber ich habe den 1.8 Redis-Teil eingefügt und es scheint zu funktionieren. Ich teste 1.9.2.0, bin aber noch nicht für die Hauptzeit bereit, da einige meiner Erweiterungen nicht mehr funktionieren.

Versuchen Sie es mit https://github.com/steverobbins/Magento-Redismanager . Ich mag es, du magst es vielleicht auch!

James Niland
quelle
Zu Ihrer Information: Magento lädt .xmlDateien Mage_Core_Model_Configin die Funktion loadBase(). Es dauert alles .xmlmit der PHP-Funktion glob()am $files = glob($etcDir.DS.'*.xml');
Anfang
0

Schaffe es, das Problem zu lösen und es ist die seltsamste Sache, die es je gab. Wenn ich das ändere local.xml, um das Problem zu beheben, lege ich eine Sicherungskopie der alten Datei mit der Aufschrift an local_back.xml. Ich lösche nur diese Datei und jetzt funktioniert alles gut. Keine Ahnung, warum Magento diese Datei abholt. Trotzdem wurde das Problem behoben.

Ashvin Monpara
quelle
1
Weil Magento jede XML-Datei lädt, app/etc/wie Sie in sehen können\Mage_Core_Model_Config::loadBase
Fabian Blechschmidt
Ich habe Bigin Magento Devloper
Ashvin Monpara
0

Vielleicht versteht jemand nicht was passiert oder meine Antwort, wie bei den anderen Commits wird Magento alles laden, was mit ".xml" endet. Also, wenn Sie Backups oder Kopien möchten, die nicht verwendet werden, dann wird das Anhängen von Backs oder Backups oder anderen Dingen NICHT funktionieren!

back_local.xml funktioniert nicht

Wenn Sie Kopien oder Backups wünschen, müssen Sie das Suffix des Dateinamens ändern, oder mit anderen Worten das Format "local.xml.backup" oder die .xml-Datei insgesamt löschen . Ich verwende local.xml.backup als Kopie, während ich Ich teste , da ich die ".backup" einfach entfernen kann , um sie zu verwenden, wenn ich möchte. Sie können immer "Speichern unter" in einem Editor für verschiedene Versionen wie .back_today oder .back2 und dergleichen verwenden.

Zu Ihrer Information, Magento lädt .xml-Dateien in Mage_Core_Model_Config in die Funktion loadBase (). Es braucht alle .xml mit der PHP-Funktion glob () am Anfang $ files = glob ($ etcDir.DS. '*. Xml'); - Matthéo Geoffray 17. Februar 16 um 14:56 Uhr

Verwenden Sie also beim Testen verschiedener Backends das oben genannte Format.

APC-Memcached sind veraltet und verwenden keine Schlüssel wie Redis . Soweit ich weiß, gibt es keinen signifikanten Unterschied zwischen

    <session_save><![CDATA[db]]></session_save>

[files], [db], [memcache] oder ein anderer Cache, da dies eher eine Situation der Serverantwortzeit und / oder der auf dem Server verwendeten Festplatten ist. Siehe: " Magento Session Storage: Welche und warum ?"

Als mein VPS (InMotion) auf Solid State Festplatten umgestellt wurde, war alles enorm schneller. Ich bekam Milliarden-Sekunden-Überweisungen!

Auf meinen eigenen Testservern zu Hause ist die eine Box, die HST 10k Spindeldrehzahl und eine Bootslast von Cache verwendet, wie 64 MB (für Servernutzung markiert), sehr schnell und die andere Box sehr langsam mit den Festplatten, die Sie erhalten aus einer OEM-Box.

Auch mit 8 CPU-Kernen und 32 GB RAM hilft eine Menge. So viel von dem, was online als VPS oder sogar als dedizierter Server angeboten wird, ist ein Betrug !!! Sie müssen auf die Details oder Ressourcen eingehen, die Sie als Unlimited erhalten, was nichts bedeutet, wenn der Server in Wirklichkeit als Shared Hosting weitergegeben wird. Und lassen Sie sich von den Bildern nicht in die Irre führen, was ihre Einrichtung wirklich sein könnte. Vielleicht hast du etwas wie Hillary für ihre E-Mail, nur etwas in einem Badezimmerschrank. Der Haken dabei ist, dass sie oft einen Vertrag über ein Jahr oder länger wollen, um den guten Preis zu erzielen. Es kann einen Monat oder länger dauern, bis Sie feststellen, dass Sie sich nur auf einem langsamen Server befinden !!!

James Niland
quelle