我想将Varnish-Cache版本/签名添加到我的传入HTTP请求中,这样我就可以在我的网络服务器上记录带有请求的Varnish版本。我了解此信息可在obj.http.Server
中找到,但这不适用于vcl_recv
或vcl_miss
:
set req.http.X-VARNISH-VERSION = obj.http.Server;
显然,那些vcl subs只能访问req
而不是obj
。有没有其他方法可以将版本号转换为HTTP请求标头?
我正在使用Varnish 3.0.2。
[编辑] 我使用Varnish模块作为我系统中不可或缺的组件,作为自动化测试的一部分,我通过负载均衡器运行功能测试。我希望我的网络服务器(本例中为hhvm)知道哪个版本的Varnish代理请求。目前我正在为此目的使用硬编码字符串,但我想自动执行此操作,以便将非硬编码配置分发到我的清漆服务器。
答案 0 :(得分:0)
Varnish仅在执行合成响应时设置Server标头(如vcl_error
中所述),并且在该情况下标题不包含Varnish'版本
请扩展您的问题,我无法想象您想要实现的目标(以及为什么固定的字符串标题替换能够满足您的需求)。