为 IIS10 禁用 "Vary" Header
Disable "Vary" Header for IIS10
我正在尝试通过 web.config 禁用 "Vary" header,但我尝试了以下方法但没有成功:
设置#1
<system.webServer>
<httpProtocol>
<customHeaders>
<remove name="Vary" />
</customHeaders>
</httpProtocol>
</system.webServer>
设置#2
<rewrite>
<outboundRules rewriteBeforeCache="true">
<rule name="Remove Vary Header">
<match serverVariable="RESPONSE_Vary" pattern=".+" />
<action type="Rewrite" value="" />
</rule>
</outboundRules>
</rewrite>
这两个设置都不起作用,我想知道我做错了什么?
我找到了这个问题的答案。如果启用压缩,IIS 会覆盖 "Vary" header,因此在 web.config 中实施以下内容将阻止 IIS 覆盖您的重写规则:
<system.webServer>
<urlCompression doStaticCompression="false" doDynamicCompression="false"/>
</system.webServer>
您将 运行 遇到的唯一问题是尝试禁用压缩(如果它已在 web.config 中使用)。如果开发人员正在使用压缩,您将需要与他们合作将其删除。
我正在尝试通过 web.config 禁用 "Vary" header,但我尝试了以下方法但没有成功:
设置#1
<system.webServer>
<httpProtocol>
<customHeaders>
<remove name="Vary" />
</customHeaders>
</httpProtocol>
</system.webServer>
设置#2
<rewrite>
<outboundRules rewriteBeforeCache="true">
<rule name="Remove Vary Header">
<match serverVariable="RESPONSE_Vary" pattern=".+" />
<action type="Rewrite" value="" />
</rule>
</outboundRules>
</rewrite>
这两个设置都不起作用,我想知道我做错了什么?
我找到了这个问题的答案。如果启用压缩,IIS 会覆盖 "Vary" header,因此在 web.config 中实施以下内容将阻止 IIS 覆盖您的重写规则:
<system.webServer>
<urlCompression doStaticCompression="false" doDynamicCompression="false"/>
</system.webServer>
您将 运行 遇到的唯一问题是尝试禁用压缩(如果它已在 web.config 中使用)。如果开发人员正在使用压缩,您将需要与他们合作将其删除。