如何让清漆在 http 响应标头中返回,它从哪个后端接收响应?

5 varnish

我在后端有三台服务器,有一个循环导演。

我想用 varnish 写一个 X-Server-By 标头,其中包含从中获取响应的服务器的名称或 IP,如何做到这一点?

the*_*son 10

在清漆 3.0.2 中,我使用:

sub vcl_fetch {
    set beresp.http.X-Backend = beresp.backend.name;
}
Run Code Online (Sandbox Code Playgroud)

完美运行。

  • 对于 Varnish 4,`vcl_fetch` 已重命名为 `vcl_backend_response`。否则这也适用。 (2认同)

Con*_*roe -1

以下内容未经测试,但可能会帮助您入门:

sub vcl_deliver {
    set resp.http.X-Served-By = server.hostname;
    deliver;
}
Run Code Online (Sandbox Code Playgroud)