【发布时间】:2012-03-02 04:54:15
【问题描述】:
我看不到类似的问题,但如果我在欺骗,请道歉。
我们正在我们的系统上运行清漆缓存,但想要安装一个系统,以便我们可以在编辑单个页面时清除它们(相当正常)。我们一直在尝试通过使用 HTTP 标头使其工作。因此,我们的 VCL 设置如下:
acl purge {
"localhost";
#### Our server IP #####
}
sub vcl_recv {
if (req.request == "PURGE") {
if (!client.ip ~ purge) {
error 405 "Not allowed.";
}
return (lookup);
}
}
sub vcl_hit {
if (req.request == "PURGE") {
purge;
}
}
sub vcl_miss {
if (req.request == "PURGE") {
purge;
}
}
但是,我不知道如何实际发送 http 清除请求。我们在网站上使用 PHP,所以我尝试使用:
header("PL: PURGE / HTTP/1.0");
header("Host: url to purge");
但这似乎没有任何作用(并且 varnishlog 似乎没有显示任何清除)。
我也尝试过 cURL,但同样,它似乎不起作用。我是否在这里遗漏了一些真正基本的东西,或者基础健全,这意味着我的实现存在错误?
非常感谢,
【问题讨论】: