浏览文章
文章信息
管理缓存
除了本主题中描述的命令参数之外,请参阅常用参数。
以Magento文件系统所有者身份运行所有Magento CLI命令。
缓存类型概述
Magento 2具有以下缓存类型:
缓存类型“友好”的名称 缓存类型代码名称 描述 组态 配置 Magento从所有模块收集配置,合并它,并将合并的结果保存到缓存。此缓存还包含存储在文件系统和数据库中的特定于商店的设置。修改配置文件后清除或刷新此缓存类型。 布局 布局 编译的页面布局(即所有组件的布局组件)。修改布局文件后清理或刷新此缓存类型。 阻止HTML输出 block_html 每个块的HTML页面片段。修改视图图层后清除或刷新此缓存类型。 收藏数据 集合 数据库查询的结果。如有必要,Magento会自动清理此缓存,但第三方开发人员可以将任何数据放入缓存的任何部分。如果您的自定义模块使用导致Magento无法清理的缓存条目的逻辑,请清除或刷新此缓存类型。 DDL db_ddl 数据库架构。如有必要,Magento会自动清理此缓存,但第三方开发人员可以将任何数据放入缓存的任何部分。在对数据库模式进行自定义更改后清理或刷新此缓存类型。(换句话说,Magento不会自行更新。)自动更新数据库模式的一种方法是使用该 magento setup:db-schema:upgrade
命令。编译配置 compiled_config 编译配置 实体属性值(EAV) EAV 与EAV属性相关的元数据(例如,商店标签,相关PHP代码的链接,属性呈现,搜索设置等)。您通常不需要清理或刷新此缓存类型。 页面缓存 完整页面 生成的HTML页面。如有必要,Magento会自动清理此缓存,但第三方开发人员可以将任何数据放入缓存的任何部分。修改影响HTML输出的代码级别后,清除或刷新此缓存类型。建议保持启用此缓存,因为缓存HTML可显着提高性能。 反射 反射 删除Webapi模块和Customer模块之间的依赖关系。 翻译 翻译 合并所有模块的翻译后,将清理合并缓存。 集成配置 config_integration 编译集成。更改或添加集成后清理或刷新此缓存。 集成API配置 config_integration_api Store's Integrations的编译集成API配置。 Web服务配置 config_webservice 缓存Web API结构。 客户通知 customer_notification 出现在用户界面中的临时通知。 查看缓存状态
要查看缓存的状态,请输入
bin/magento cache:status示例如下:
config: 1 layout: 1 block_html: 1 collections: 1 reflection: 1 db_ddl: 1 compiled_config: 1 eav: 1 customer_notification: 1 config_integration: 1 config_integration_api: 1 full_page: 1 config_webservice: 1 translate: 1启用或禁用缓存类型
使用此命令可以启用或禁用所有缓存类型,或仅启用您指定的缓存类型。在开发期间禁用缓存类型非常有用,因为您无需刷新缓存即可查看更改结果; 但是,禁用缓存类型会对性能产生负面影响。
从2.2版开始,您只能在生产模式下运行Magento时使用命令行启用或禁用缓存类型。如果在开发人员模式下运行Magento,则可以使用命令行或手动启用或禁用缓存类型。在此之前,您必须手动使Magento文件系统所有者
<magento_root>/app/etc/env.php
可写。您可以使用命令行或Magento Admin清除(也称为刷新或刷新)缓存类型。
命令选项:
bin/magento cache:enable [type] ... [type]bin/magento cache:disable [type] ... [type]省略的同时
[type]
启用或禁用所有缓存类型。该type
选项是以空格分隔的缓存类型列表。列出缓存类型及其状态:
bin/magento cache:status例如,要禁用整页缓存和DDL缓存:
bin/magento cache:disable db_ddl full_page样本结果:
Changed cache status: db_ddl: 1 -> 0 full_page: 1 -> 0启用缓存类型会自动清除该缓存类型。
清理和刷新缓存类型
要从缓存中清除过期项,可以清理或刷新缓存类型:
清除缓存类型仅从启用的Magento缓存类型中删除所有项目。换句话说,此选项不会影响其他进程或应用程序,因为它只清除Magento使用的缓存。
未清除已禁用的缓存类型。
升级Magento Open Source或Magento Commerce版本,从Magento Open Source升级到Magento Commerce,或安装Magento Commerce for B2B或任何模块后,始终清理缓存。
刷新缓存类型会清除缓存存储,这可能会影响使用相同存储的其他进程应用程序。
如果您已经尝试清理缓存并且仍然遇到无法隔离的问题,请刷新缓存类型。
命令用法:
bin/magento cache:clean [type] ... [type]bin/magento cache:flush [type] ... [type]
[type]
空格分隔的缓存类型列表在哪里。省略同时[type]
清除或刷新所有缓存类型。例如,要刷新所有缓存类型,请输入bin/magento cache:flush样本结果:
Flushed cache types: config layout block_html collections reflection db_ddl compiled_config eav customer_notification config_integration config_integration_api full_page config_webservice translate您还可以在Magento Admin中清理和刷新缓存类型。进入系统 > 工具 > 缓存管理。刷新缓存存储相当于
bin/magento cache:flush
。Flush Magento Cache相当于bin/magento cache:clean
。