0

我正在尝试更改 Varnish4 中的 PURGE 响应标头

HTTP/1.1 200 Purged
Content-Type: text/html; charset=utf-8
Date: Fri, 02 Sep 2016 19:57:56 GMT
Retry-After: 5
Server: Varnish
X-Varnish: 163921
Content-Length: 241
Connection: keep-alive

我在vcl_recvvcl_deliver中修改了“ Server: Varnish ” 。除了 PURGE 之外,这似乎适用于任何其他请求。

我需要更改服务器标头或至少添加自定义响应标头

我找不到任何关于它的文档,所以我想知道是否有人以前做过,或者它是一个硬编码的选项。

4

1 回答 1

2

清除对象时,您需要覆盖 Varnish 生成的内置合成响应。这可以使用一些额外的 VCL 轻松实现:

...

sub vcl_purge {
    return (synth(700, "Purged"));
}

sub vcl_synth {
    if (resp.status == 700) {
        set resp.status = 200;
        set resp.http.Server = "ACME";
    }
}
于 2016-09-03T08:14:11.833 回答