首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在VCL (Varnish配置语言)中定义列表

在VCL (Varnish配置语言)中定义列表
EN

Stack Overflow用户
提问于 2011-10-07 17:15:33
回答 1查看 1.7K关注 0票数 3

有没有一种用Varnish VCL语言定义域名列表的方法?我认为ACL也有类似的情况。我想这样做(以ACL为例)。

代码语言:javascript
复制
acl website_list {
    '(www\.)?domain.tld';
    '(www\.)?domain2.tld';
}
...
if(req.http.Host ~ website_list) return(lookup);

我可以只使用单独的RegEx测试,但是如果我想在VCL中的其他地方使用这些域,那么它的可重用性就不是很好。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2012-02-04 19:34:18

你可以有一个测试条件来设置一个标记头,然后再测试一下:

代码语言:javascript
复制
sub vcl_recv {
  if (req.http.Host ~ "^(www\.)?domain.tld" || 
      req.http.Host ~ "^(www\.)?domain2.tld") {

    /* Set the magic marker */
    set beresp.http.magicmarker = "1";
  }

  if (resp.http.magicmarker) {
    return(lookup);
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7685209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档