" Header附加了Vary User-Agent",如何删除" User-Agent"字符串来自" Vary"?

时间:2014-12-01 12:42:47

标签: apache .htaccess mod-headers

我知道我可以在我的.htacess中使用此行将User-Agent添加到Vary http标头中:

Header append Vary User-Agent

但是,如果User-Agent标题已设置,我如何从Vary标题中删除它?

根据mod_headers doc,有一个append选项,但没有等效的“删除”选项。

2 个答案:

答案 0 :(得分:2)

下面简单的回答,但你需要一些恶作剧来避免发送一个空的Vary:标题(尽量避免偏执狂)

Header edit Vary (.*)User-Agent(.*) $1$2
# Remove leading or trailing ',' without making things complex above
Header edit Vary ^,?(.*),?$ $1
# 2.4-only: remove empty Vary header
Header unset Vary "expr=resp('Vary') =~ /^$/"

x-never-match可以是任何不太可能使用的标题名称。

答案 1 :(得分:2)

虽然这不像删除特定User-Agent关键字那样通用,但它可以完成工作:

Header set Vary "Accept-Encoding"

这将覆盖您现有的标头,以便vary标头只有Accept-Encoding