调试Varnish HTTP Purge

时间:2013-12-19 17:18:05

标签: wordpress varnish purge

我提供维护的Wordpress博客之一并不是使用插件 Varnish HTTP Purge 来清除缓存。是否使用Varnish Cache Purge按钮或编辑帖子时。

为了知道问题的原因,我想知道一种检查清除请求是否到达Varnish服务器的方法,也许是使用varnishlog命令。

http://wordpress.org/plugins/varnish-http-purge/

3 个答案:

答案 0 :(得分:16)

Varnish 4.0

varnishlog -g request -q 'ReqMethod eq "PURGE"'

答案 1 :(得分:6)

Varnish 3.x

varnishlog -d -c -m RxRequest:PURGE

这将输出内存中的任何清除。如果没有-d,它将仅输出当前请求:

varnishlog -c -m RxRequest:PURGE

来自man varnishlog

-d在启动时处理旧日志条目。通常,varnishlog只会处理在启动后写入日志的条目。

答案 2 :(得分:0)

它可以像清漆配置一样简单,将清除请求限制为某个IP或一组IP。我知道我的典型清漆配置包括:

acl purge {
  "127.0.0.1";
  "123.45.67.0"/24;
}

sub vcl_recv {
  ....

  if (req.request == "PURGE") {
    if (!client.ip ~ purge) {
      error 405 "Not allowed.";
    }   
    return (lookup);
  }

  ....
}   

我会先检查一下,特别是配置是从varnish网站上的一些例子中复制出来的。几乎所有这些都包括用于清除的ACL。