zgdy 发表于 2015-8-12 13:48:41

移除IIS默认的响应头

  在IIS+ASP.NET的运行环境,默认情况下会输出以下的响应头(Response Headers):

  那如何移除这些响应头呢?下面我们来一个一个移除。
  1. 移除Server
  借助IIS URL Rewrite Module,添加如下的重写规则:



<rewrite>
<allowedServerVariables>
<add name="REMOTE_ADDR" />
</allowedServerVariables>            
<outboundRules>
<rule name="REMOVE_RESPONSE_SERVER">
<match serverVariable="RESPONSE_SERVER" pattern=".*" />
<action type="Rewrite" />
</rule>
</outboundRules>
</rewrite>
  重写规则存放在C:\Windows\System32\inetsrv\config\applicationHost.config中。
  2. 移除X-AspNet-Version
  在web.config的<httpRuntime>中添加enableVersionHeader="false":



<httpRuntime enableVersionHeader="false" />
  3. 移除X-AspNetMvc-Version
  在 Application_Start() 中添加如下代码:



protected void Application_Start()
{
MvcHandler.DisableMvcResponseHeader = true;
}
  4. 移除X-Powered-By
  在IIS Manager的HTTP Response Headers中移除X-Powered-By:

  【参考资料】
  Remove Unwanted HTTP Response Headers
页: [1]
查看完整版本: 移除IIS默认的响应头