【问题标题】:Varnish Cache: Specific Domain only NOT ALL清漆缓存:仅限特定域 不是全部
【发布时间】:2017-02-22 07:01:51
【问题描述】:

我需要帮助。可以只缓存一个特定的域,因为我不希望所有域都被缓存,我只想要 example.com。我可以要求它的配置..提前谢谢。我正在使用 Varnish Cache 4。

我只有这个

/etc/varnish/default.vcl

 backend marketics {
   .host = "127.0.0.1";
   .port = "7080";
 }

我的 apache 端口是 7080 。

【问题讨论】:

    标签: ubuntu varnish-vcl


    【解决方案1】:

    您需要为其他域返回pass

    sub vcl_recv {
      if (! req.host == "example.com") {
        return (pass);
      }
      #else failover to the default behaviour
    }
    

    pass 告诉 Varnish 不要查看它的缓存,它总是会从后端获取内容。

    【讨论】:

    • 我怎么知道或检查先生,如果 example.com 是清漆唯一的 url 缓存而其他不是?谢谢先生的回复。
    • 您可以在执行请求时在服务器上运行 varnishlog。您将看到您的请求是 HIT(缓存)、MISS(在缓存中查找但未找到)还是 PASS(未在缓存中查找)。另外,你应该阅读清漆书的基础知识。这是值得的。
    • 先生怎么样。如果我要缓存的是外部服务器,而不是 localhost 域。
    • 这是您要求的奇怪行为,但您可以使用 vcl 逻辑做您想做的事情,只需根据自己的喜好更改 ìf 的条件。您可以使用逻辑运算符,例如 !==&&||~,它们代表正则表达式
    猜你喜欢
    • 1970-01-01
    • 2015-07-11
    • 1970-01-01
    • 2016-04-19
    • 2021-08-05
    • 1970-01-01
    • 1970-01-01
    • 2012-11-12
    • 2012-04-03
    相关资源
    最近更新 更多