Was ist der empfohlene Weg, um die Caches zu bereinigen, wenn ich ein Magento 2-Geschäft zum Thema habe?
Ich bearbeite die .less
Dateien und das tue ich aktuell
rm -rf pub/static/frontend/* var/view_preprocessed/ var/*cache/*
Dies scheint jedoch die Brute-Force-Methode zu sein.
php bin/magento cache:flush --all
scheint den Job nicht zu machen.
Gibt es eine bessere?
Antworten:
Ich denke, der richtige Weg, um .less Dateien zu aktualisieren, ist es jetzt
Weil es "WENIGER Quelldateien sammelt, verarbeitet und veröffentlicht"
Ein weiterer Punkt ist es die Nutzung dev - Modus während der Entwicklung dann nach Dokumentation „Static View - Dateien wird nicht zwischengespeichert, sie geschrieben werden das Magento pub / statische Verzeichnis jedes Mal , wenn sie genannt werden“
Um Magento 2 in den Entwicklermodus zu versetzen, müssen Sie die folgenden Schritte ausführen
Löschen Sie den Inhalt der Verzeichnisse var / generation und var / di:
rm -rf <your Magento install dir>/var/di/* <your Magento install dir>/var/generation/*
Stellen Sie den Modus ein:
php bin/magento setup:mode:set developer
quelle
deploy:mode:set
befehl mehr (beta2). Aber ich setzeMAGE_MODE
überSetEnv
. Denndev:css:deploy
ich muss einen Dateinamen eingeben. Welches soll ich verwenden?RewriteCond !-f
in,.htaccess
inpub/static
dem Apache die zwischengespeicherte Version verwendet, falls vorhanden.Es gibt drei Möglichkeiten, den CSS-Cache zu löschen, wenn die Änderungen nicht übernommen werden.
1. Verwenden Sie stattdessen Grunt, damit Sie den Cache nicht nach jeder Änderung des CSS bereinigen müssen (empfohlener Weg). Weitere Dokumentation zu Grunt finden Sie unter diesem Link
2. Gehen Sie zu System> Cache-Verwaltung> Zusätzliche Cache-Verwaltung> JavaScript / CSS-Cache leeren.
3. Führen Sie den Befehl deploy aus (dies dauert lange und ist keine gute Empfehlung. Ändern Sie den Modus auch in developer, wenn er nicht vorhanden ist.)
quelle
Ich denke, dass
pub/static
Inhalte (im Dev-Modus) mit der gleichen Logik generiert werden, die fürvar/generation
Dateien verwendet wird. Ich meine, wenn der erforderliche Inhalt nicht vorhanden ist, wird er erstellt, aber wenn er bereits vorhanden ist, wird er wiederverwendet.Daher denke ich, dass Sie auch bereinigen
pub/static[area]
oder ausführen solltensetup:static-content:deploy
, um alle zu überschreiben, aber dieser Prozess ist bei jeder Änderung sehr langsam.quelle
Deaktivieren Sie im Entwicklermodus das
pub/static
und nicht manuellvar/view_preprocessed
.Gehen Sie zu
System > Tools > Cache Management
und klicken Sie auf Flush Static Files Cache .quelle
Du kannst rennen
oder mit mehr Genauigkeit
https://devdocs.magento.com/guides/v2.0/frontend-dev-guide/css-topics/css_debug.html#grunt_commands
quelle
So leeren Sie den Magento-Cache in einem Befehl, wie Sie ihn ausführen können:
So leeren Sie den Speichercache:
So überprüfen Sie den Status des Cache-Laufs (Status sollte 1 für Aktiv und 0 für Deaktiviert sein):
So deaktivieren Sie den Magento-Cache:
So aktivieren Sie den Cache-Lauf:
Aber ich denke, Ihr Problem liegt darin, dass der Magento-Modus auf den Produktionsmodus eingestellt ist. Sie können Ihren Modus überprüfen, indem
bin/magento deploy:mode:show
Sie Folgendes verwenden: Weitere Informationen zur Magento-Produktion und zum Entwicklermodus finden Sie hierAlternativ können
bin/magento setup:static-content:deploy
Sie den Entwicklermodus verwendenbin/magento setup:upgrade
, um kompilierten Code und den Cache zu löschen. Oder löschen Sie einfach manuell alles aus dempub/static
Ordner Ihres Projekts, das Sie aktualisieren möchten. Wenn in diesem Ordner etwas fehlt, wird es mit den letzten Änderungen neu generiert.quelle