varnish regex or for if (bereq.url ~ "



我试图为清漆缓存v4 创建一个正则表达式

sub vcl_backend_response {

if (bereq.url ~ "(/media|/bundles|/sonata_admin/|/build)$" ) {
{
unset beresp.http.set-cookie;
set beresp.http.cache-control = "public, max-age=2592000";
set beresp.ttl = 30d;
return (deliver);
}

我也试试

if (bereq.url ~ "(/media|/bundles|/sonata_admin|/build)$" ) {

我想包括位置从/media或/bundles或…开始的所有文件。。。

这不起作用

在您的配置中,它不起作用,因为您正在匹配代表"字符串末尾"的$

您希望使用"开头匹配"的^,因此:

if (bereq.url ~ "^/(media|bundles|sonata_admin|build)") {
unset beresp.http.set-cookie;
set beresp.http.cache-control = "public, max-age=2592000";
set beresp.ttl = 30d;
return (deliver);
}

最新更新