我的配置基于Varnish 3.0,我一直在更新它们。但我陷入了困境。
vcl_fetch
已替换为vcl_backend_response
。 vcl_fetch
内部您曾经req.url
使用vcl_backend_response
,但if
内不再使用{。}}。
所以我留下了三个sub vcl_backend_response {
set beresp.do_esi = true;
if (!(req.url ~ "wp-(login|admin)")) {
unset beresp.http.set-cookie;
}
if ( req.http.host ~ "[0-9]\.example\.com" || req.http.host ~ "[0-9]\.example\.com") {
set beresp.ttl = 60s;
}
if ( req.url ~ "\.(html|htm|css|js|txt|xml|svg)(\?[a-z0-9=]+)?$" ) {
set beresp.do_gzip = true;
}
}
语句,这些语句不起作用:
{{1}}
如何在Varnish 4.0版中转换这些配置?
顺便说一下,我是Varnish VCL的新手。
答案 0 :(得分:35)
您现在必须在bereq.url
中使用vcl_backend_response
。