移除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:
【参考资料】