在过去,您可以使用微软的UrlScan修改标题并删除显示IIS版本的标题。
这不适用于IIS 7.5,而IIS7.0是支持的最新版本。还有什么方法可以移除一些响应头吗?
运行安装了IIS7.5的Windows 2008。
发布于 2014-04-13 18:47:41
您可以使用IIS本机代码模块删除IIS 7.5中的任何标头(实际上,相同的模块应该适用于IIS7.0-8.5)。
本机代码模块不同于更常见的托管模块,因为它们是使用win32 API而不是ASP.NET编写的。它们适用于所有请求,包括静态页面和图像。
下面的文章提供了用于移除IIS 7.0到8.5中标题的示例本机代码模块的二进制文件和源代码。此模块是一个简单的MSI安装,默认情况下将删除“服务器”“X驱动- by”和"AspNet版本“标头。可以使用IIS配置删除其他标头。
http://www.dionach.com/blog/easily-remove-unwanted-http-headers-in-iis-70-to-85
发布于 2014-03-01 18:58:52
网络上有大量的资源可以解释如何做到这一点。只是一个样本:
然而,我承认,其中大多数并不能在每一种情况下发挥作用:
Global.asax.cs文件源代码。Global.asax方法仅适用于使用ASP.NET开发的网站。那么,如果您的网站只是静态的html页面,以及css或js呢?web.config方法将无法删除Server Version头。就我而言,我已经决定摆脱所有与开发相关的解决方案。
我选择了URL Rewrite方法,所以我完全独立于web开发人员(如果有的话)和ASP.NET或HTML开发。
要删除头X-Powered-By,请执行以下操作:
IIS Manager中,导航到您的网站HTTP Response HeaderX-Powered-By并单击Remove要删除Server Version头,我使用来自微软的URL Rewrite扩展:
然后,我定义了一个出站规则来用空值重写Server Version。但我也可能编写一个错误的值,如Apache或unknown ;)
我希望与我一样,你会发现这些链接对于实现我所说的内容非常有用:
最后,我还没有亲自测试它,但是您似乎仍然可以将UrlScan与IIS7.5/8一起使用:
https://serverfault.com/questions/578956
复制相似问题