nginx 不会写入 Varnish 后面的缓存

nginx 不会写入 Varnish 后面的缓存

我使用 nginx 作为远程 Web 服务器的反向代理。缓存被写入文件。但是,当我将 Varnish 放在它前面时,nginx 停止写入缓存文件,这会导致性能下降并使流量翻倍。

前端(Varnish)怎么可能告诉 nginx 不要缓存这些请求?我尝试调试,但没有发现任何东西。我的 nginx 配置如下:

server {
... 
  location / {
    ...
    proxy_ignore_headers Set-Cookie Expires Cache-Control;
    proxy_cache p-cache;
  }
}

再次,如果我直接向 nginx 发出请求,则没有问题。但是我必须使用 Varnish,它是该服务器通往其他服务的唯一门户。

答案1

我找到了。这是因为proxy_cache_min_uses = 3我在其他地方设置了。使用此声明,当同一 url 上的命中次数少于 3 次时,nginx 将不会缓存到文件。

相关内容