为 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 中使用)。如果开发人员正在使用压缩,您将需要与他们合作将其删除。