我在运行多个WordPress站点的nginx之前使用了Varnish3。我使用的是许多大型WordPress站点推荐和使用的default.vcl。
default.vcl:http://pastebin.com/KaSdvuRS
我正在使用W3总缓存,它有一个在清除缓存时自动清除的选项。我还测试了安装Varnish HTTP清除插件,以便在编辑帖子/页面时将其清除。这两种方法似乎都不起作用,所以我在ssh w/ curl上测试了交互式会话。
我登录到varnish/nginx机器上的SSH,并键入以下命令来测试varnish清除:
curl -X PURGE http://www.example.com
结果是:
<head>
<title>405 Not allowed.</title>
</head>
<body>
<h1>Error 405 Not allowed.</h1>
<p>Not allowed.</p>
<h3>Guru Meditation:</h3>
<p>XID: 265824636</p>
<hr>
<p>Varnish cache server</p>
</body>你知道我错过了什么吗?这个vcl文件与Varnish cache.org为WordPress推荐的文件非常相似,也是我在任何地方都推荐使用的清除配置。
发布于 2012-10-02 13:33:05
很有可能,您正在通过公共IP连接到Varnish机器,并且Varnish也会看到连接的是公共IP,而不是本地IP。您的清除ACL现在只允许localhost/127.0.0.1。您可能还希望使用服务器的公共IP地址来扩展该列表。
或者,尝试通过删除ACL检查并简单地允许清除所有人的ACL来进行调试,只是为了将ACL排除为有罪的ACL。
https://stackoverflow.com/questions/12684784
复制相似问题