在IIS 8.5中隐藏http报头响应中的一些信息



我想从头响应中隐藏一些敏感信息。我在IIS 8.5中使用重写模块,我隐藏了服务器响应的信息,但对于其他报头,响应有两次这个报头,一次有信息(我们不希望那样),第二个没有这个。我们只想保留第二个。由于某种原因,虽然URL重写看起来工作得很好,但原始的标头(和值)也包含在响应中。我有这个配置。

<httpProtocol>
<customHeaders>
<clear />
<add name="X-Frame-Options" value="some value" />
<add name="X-UA-Compatible" value="some value" />
<add name="Content-Security-Policy" value="some value" />
</customHeaders>
</httpProtocol>      
<rewrite>
<outboundRules rewriteBeforeCache="true">
<rule name="Hide Server header">
<match serverVariable="RESPONSE_Server" pattern="(.*)" />
<action type="Rewrite" value="" />
</rule>
<rule name="Hide X-UA-Compatible header">
<match serverVariable="RESPONSE_X-UA-Compatible" pattern="(.*)" />
<action type="Rewrite" value="" />
</rule>
<rule name="Hide X-Frame-Options header">
<match serverVariable="RESPONSE_X-Frame-Options" pattern="(.*)" />
<action type="Rewrite" value="" />
</rule>
<rule name="Hide Content-Security-Policy header">
<match serverVariable="RESPONSE_Content-Security-Policy" pattern="(.*)" />
<action type="Rewrite" value="" />
</rule>
</outboundRules>
</rewrite>

,结果是:

输入图片描述

我解决了这个问题。

我必须将rewriteBeforeCache的值从true更改为false

最新更新