使用自定义错误页时删除IIS服务器头
好的……我需要从我的生产服务器中删除“Microsoft:IIS8.5”服务器头,我已经使用URLRewite模块完成了这项工作。这是我的规则:使用自定义错误页时删除IIS服务器头,iis,http-headers,httpresponse,Iis,Http Headers,Httpresponse,好的……我需要从我的生产服务器中删除“Microsoft:IIS8.5”服务器头,我已经使用URLRewite模块完成了这项工作。这是我的规则: <outboundRules> <rule name="replace server name header" patternSyntax="Wildcard"> <match serverVariable="RESPONSE_Server" pattern="*" /> &l
<outboundRules>
<rule name="replace server name header" patternSyntax="Wildcard">
<match serverVariable="RESPONSE_Server" pattern="*" />
<action type="Rewrite" value="MyServer" />
</rule>
</outboundRules>
这在所有常规页面上都非常有效。问题是我有自定义错误页面,因此当我遇到错误时,它会执行我的自定义错误(使用MVC),看起来很棒
但是,当它返回此自定义错误页时,服务器变量返回到“Microsoft:IIS 8.5”
不确定为什么会这样做,因为URL重写应该替换所有响应上的变量
你知道为什么会发生这种情况吗?好的,所以在几个小时后,我无法理解为什么当我执行一个自定义错误页面时,IIS会通过重写服务器头的规则绕过 我可以将IIS错误页面设置更改为重定向到我的自定义错误页面,而不是执行自定义错误页面 疯狂的是,来自无效页面(返回代码为302)的初始响应包含重写的服务器头,以及它重定向到的自定义错误页面
我想我会发布答案,以防其他人碰到同样的问题。虽然不清楚,但在进行安全扫描时,可以找到它。谢谢您的提示。这节省了我几个小时的搜索时间。