如何在VCL中将Varnish-Cache签名添加到HTTP请求中?

时间:2014-02-14 16:59:21

标签: varnish varnish-vcl

我想将Varnish-Cache版本/签名添加到我的传入HTTP请求中,这样我就可以在我的网络服务器上记录带有请求的Varnish版本。我了解此信息可在obj.http.Server中找到,但这不适用于vcl_recvvcl_miss

set req.http.X-VARNISH-VERSION = obj.http.Server;

显然,那些vcl subs只能访问req而不是obj。有没有其他方法可以将版本号转换为HTTP请求标头?

我正在使用Varnish 3.0.2。

[编辑] 我使用Varnish模块作为我系统中不可或缺的组件,作为自动化测试的一部分,我通过负载均衡器运行功能测试。我希望我的网络服务器(本例中为hhvm)知道哪个版本的Varnish代理请求。目前我正在为此目的使用硬编码字符串,但我想自动执行此操作,以便将非硬编码配置分发到我的清漆服务器。

1 个答案:

答案 0 :(得分:0)

Varnish仅在执行合成响应时设置Server标头(如vcl_error中所述),并且在该情况下标题不包含Varnish'版本

请扩展您的问题,我无法想象您想要实现的目标(以及为什么固定的字符串标题替换能够满足您的需求)。