Magento 2中的清除主题/ CSS缓存


28

在为Magento 2商店设置主题时,建议的清理缓存的方法是什么?

我编辑.less文件,然后我现在做

rm -rf pub/static/frontend/* var/view_preprocessed/ var/*cache/*

但这似乎是蛮力方法。

php bin/magento cache:flush --all

似乎做不到。

有更好的吗?


由于您的问题仍未解决,请在此处查看我的答案: magento.stackexchange.com/a/101139/27685,我认为可能会有所帮助。
MauroNigrele '16

我在缓存CSS / Less方面也遇到很多问题,有时在pub / static中手动删除更改的模块会有所帮助,但并非总是如此。M2难以使用
Ben Crook 2016年

Answers:


18

我认为现在刷新.less文件的正确方法是

php bin/magento setup:static-content:deploy

因为它“收集,处理和发布源LESS文件”

还有一点是,它在开发过程中使用开发模式,然后根据文档 “静态视图文件未缓存;每次调用时,它们都会写入Magento pub / static目录”

要将Magento 2设置为开发人员模式,您需要执行以下步骤

  1. 删除var / generation和var / di目录的内容:

    rm -rf <your Magento install dir>/var/di/* <your Magento install dir>/var/generation/*

  2. 设置模式:

    php bin/magento setup:mode:set developer


1
deploy:mode:set不再有这样的命令(beta2)。但是我MAGE_MODE通过设置SetEnv。因为dev:css:deploy我必须输入一个文件名。我应该使用哪个?
亚历克斯(Alex)

对不起,这是我的坏事。setup:static-content:deploy是执行此操作的正确命令。还deploy:mode:set似乎仍然对我有用,您在bin / magento的命令列表中也没有它吗?
FireBear

明白了,deploy:mode:set也根据goo.gl/Pive1U
FireBear 2015年

我仍在尝试这种东西……
Alex

“静态视图文件未缓存;每次被调用时,它们都会写入Magento pub / static目录。”我认为该文档是错误的。有一个RewriteCond !-f.htaccesspub/static这使得阿帕奇如果它存在使用缓存的版本。
亚历克斯(Alex)

2

如果更改未反映出来,则有三种清除css缓存的方法。

1.改用Grunt,这样您就不必在每次更改CSS后都清理缓存(推荐方式),您可以通过检查此链接查看有关grunt的更多文档。

2.进入系统>缓存管理>其他缓存管理>刷新JavaScript / CSS缓存。

在此处输入图片说明

3.运行deploy命令(这是一个漫长而又不好的建议,如果不存在,也请更改为开发人员模式。)

php bin/magento setup:static-content:deploy

1

我认为,pub/static内容(在开发模式下)是使用与var/generation文件相同的逻辑生成的,我的意思是,如果所需的内容不存在,则创建该内容,但是如果已经存在,则将其重用。

因此,我认为您也应该清理pub/static[area]或运行setup:static-content:deploy以覆盖所有内容,但是每次进行更改时,此过程的运行速度都很慢。


0

在开发人员模式下,无需手动清除pub/staticvar/view_preprocessed

转到System > Tools > Cache Management并单击刷新静态文件缓存



0

要在命令中刷新magento缓存,可以运行:

bin/magento cache:flush

要刷新存储缓存,可以运行:

bin/magento cache:clean

要检查缓存运行的状态(活动状态为1,禁用状态为0):

bin/magento cache:status

要一起禁用magento缓存,请运行:

bin/magento cache:disable

要启用缓存运行:

bin/magento cache:enable

但是我认为您的问题在于在生产模式下设置的Magento模式。您可以使用以下方法检查模式:bin/magento deploy:mode:show 您可以在此处阅读有关magento生产和开发人员模式的更多信息

作为开发人员模式的替代,bin/magento setup:static-content:deploy您可以使用bin/magento setup:upgrade它来清除编译的代码和缓存。或者只是手动删除pub/static需要更新的项目文件夹中的任何内容。如果该文件夹中缺少某些内容,将使用最新更改重新生成。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.