配置Commerce应用程序以使用Varnish
要将Commerce配置为使用涂漆,请执行以下操作:
-
以管理员身份登录到管理员。
-
单击“Stores”>“设置”>“配置”>“高级”>“系统”>“全页缓存”。
-
在 Caching Application 列表中,单击 清漆缓存。
-
在 TTL for public content 字段中输入值。
-
展开 Varnish Configuration 并输入以下信息:
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 字段 描述 访问列表 输入要使其内容失效的完全限定的主机名、IP地址或无类域间路由(CIDR)表示法IP地址范围。 请参阅清漆缓存清除。 后端主机 输入完全限定的主机名或IP地址,并侦听Varnish 后端 或 原始服务器 的端口;即,提供内容Varnish的服务器将加速。 通常,这是您的Web服务器。 查看清漆缓存后端服务器。 后端端口 源服务器的侦听端口。 宽限期 确定在后端无响应时,Varnish提供过时内容的时长。 默认值为300秒。 处理参数大小 指定全页缓存的 {BASE-URL}/page_cache/block/esi
HTTP终结点上要处理的布局句柄的最大数量。 限制大小可以提高安全性和性能。 默认值为100。 -
单击 保存配置。
您还可以使用C命令行界面工具从命令行激活Varnish,而不是登录到Admin:
bin/magento config:set --scope=default --scope-code=0 system/full_page_cache/caching_application 2
导出Varnish配置文件
要从Admin导出Varnish配置文件:
-
单击其中一个导出按钮以创建可与“清漆”一起使用的
varnish.vcl
。例如,如果您有Varnish 4,请单击 Export VCL for Varnish 4
下图显示了一个示例:
-
备份您现有的
default.vcl
。 然后将您刚刚导出的varnish.vcl
文件重命名为default.vcl
。 然后将文件复制到/etc/varnish/
目录。code language-bash cp /etc/varnish/default.vcl /etc/varnish/default.vcl.bak2
code language-bash mv <download_directory>/varnish.vcl default.vcl
code language-bash cp <download_directory>/default.vcl /etc/varnish/default.vcl
-
Adobe建议您打开
default.vcl
并将acl purge
的值更改为Varnish主机的IP地址。 (您可以在单独的行上指定多个主机,也可以使用CIDR表示法。)例如,
code language-conf acl purge { "localhost"; }
-
如果要自定义Vagrant运行状况检查或宽限模式或saint模式配置,请参阅高级清漆配置。
-
重新启动Varnish和您的Web服务器:
code language-bash service varnish restart
code language-bash service httpd restart
缓存静态文件
默认情况下,不应缓存静态文件,但如果要缓存它们,可以编辑VCL中的部分Static files caching
以包含以下内容:
# Static files should not be cached by default
return (pass);
# But if you use a few locales and do not use CDN you can enable caching static files by commenting previous line (#return (pass);) and uncommenting next 3 lines
#unset req.http.Https;
#unset req.http./* {{ ssl_offloaded_header }} */;
#unset req.http.Cookie;
在配置Commerce以使用Varnish之前,您必须进行这些更改。
recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c