Varnish 7.1.2升级至7.4.2后VARY头部丢失Accept-Encoding及压缩异常问题求助
Varnish 7.1.2升级至7.4.2后VARY头部丢失Accept-Encoding及压缩异常问题求助
我在服务器上一直用的是Varnish 7.1.2,最近打算升级到7.4.2。升级过程本身没出什么问题,但之后发现了一个奇怪的现象:
之前用curl请求时,返回的VARY头部是:
vary: Accept-Encoding, Cookie, User-Agent - 这是正常的状态
可升级后却变成了:
vary: User-Agent, Cookie - 明显不对
这直接导致网络用量大幅上升,因为不管是Varnish从后端获取内容,还是Varnish和客户端之间的通信,内容都不再被压缩了。
我查了好多资料后,在vcl_backend_response函数里添加了这段代码:
if (beresp.http.content-type ~ "text") { set beresp.do_gzip = true; }
加完之后情况有所好转:客户端能收到压缩后的内容,而且VARY头部里也重新出现了Accept-Encoding。但问题依然存在——Varnish从后端拉取内容的时候,还是一直用未压缩的版本,所以网络占用还是很高。
目前我暂时回滚到了7.1.2,但这显然不是长久之计。有没有大佬能帮我分析下这到底是怎么回事?
万分感谢!
备注:内容来源于stack exchange,提问作者Stefano
相关产品推荐
相关产品推荐

