【发布时间】:2021-09-21 20:57:07
【问题描述】:
我想从标头响应中隐藏一些敏感信息。我在 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>
结果是:
【问题讨论】:
-
您可以通过 FRT 了解内部结构,docs.microsoft.com/en-us/iis/extensions/url-rewrite-module/…
-
感谢大家的回答,@samwu 我不想删除标题伙伴,由于客户的安全相关问题,我想隐藏它们。就我而言,我采取的响应具有重复的标题。我只想接收规则内的值,而不是初始值。