如何去掉IIS中Response Headers的X-Powered-By、X-AspNet-Version和Server项
来源:互联网 发布:网络信息化工程公司 编辑:程序博客网 时间:2024/06/05 16:57
使用IIS作为web服务器时,输出的aspx页面的responseheaders中总是会自动带上X-Powered-By、X-AspNet-Version和Server这几个项。而使用其他web服务器时,往往能获得更加简洁的response headers。对于高负载的网站来说,能节省几个responseheader项,应该也能节省客观的流量。而从程序员的角度来说,要这些header项出来,一则暴露了网站程序所使用的版本,二来也破坏了简单之上的原则。因此,一直都在寻找去掉他们的办法。
9588.com是一个典型的以IIS为服务器的网站,通过Firebug可查看其首页的Response Headers:
再来看看鲜果热文的Response Headers,使用的服务器为ngix,相对来说,要简洁得多了:
那么,是不是IIS中这些header项不能去掉呢?当然不是,看看ctrip.com的首页的Response Headers就可以知道:
暂且不去管这其中技术人员的差异,只管来考虑如何去掉这几个项好了。
一、去掉headers中的X-Powered-By
这个是最简单的,因为在IIS里查看网站的“属性”,选择“HTTP头”选项卡就能看到在“自定义HTTP头”中有“X-Powered-By”选项,直接把它删除掉就OK了。
二、去掉Headers中的X-AspNet-Version
X-AspNet-Version的去掉似乎从IIS的选项里边找不到,因此也就变得复杂些。不过网上还是会有对策。在一篇Remove the X-AspNet-Version header 的文章就明确给出了问题的答案:
只要在web.config文件里的<system.web>节里增加<httpRuntime enableVersionHeader="false" /> 即可。
msdn里边是这么解释这个选项的含义的:
enableVersionHeader
可选的 Boolean 属性。
指定 ASP.NET 是否应输出版本标头。Microsoft Visual Studio 2005 使用该属性来确定当前使用的 ASP.NET 版本。对于生产环境,该属性不是必需的,可以禁用。
说明:该属性在 .NET Framework 1.0 中不可用。
默认值为 True。
三、去掉Headers中的Server
这个项的去掉就可有可无了,而且作为一种对web服务器自身的标识,肯定不愿意让用户能轻而易举地去掉。不过,在How to remove Server Header on IIS5.0/6.0 这篇文章中,我们还是能找到解决问题的办法:
从http://www.microsoft.com/technet/security/tools/urlscan.mspx下载urlscan,安装,找到../inetsrv/urlscan/urlscan.ini 文件中的RemoveServerHeader属性,将其设为1即可。
这个软件的最新版本是2.5,下载以后,发现还没有提供对IIS7的支持。
- 如何去掉IIS中Response Headers的X-Powered-By、X-AspNet-Version和Server项
- (翻译) 怎样移除IIS 响应中的 Server, X-AspNet-Version, X-AspNetMvc-Version 和 X-Powered-By
- 去掉Powered by Ecshop 2.7.x的版权信息
- x-powered-by 隐藏 php的版本号
- 【转】WebSphere Process Server 新手入门 - CloudSpace的个人空间 - ITPUB个人空间 - powered by X-Space
- 关于web服务器头部的Server与X-Powered-By信息
- 移除http响应中的多余的头(X-AspNet-Version,Server等)
- 如何去掉 Liferay 页面下方的 Powered by Lifray
- 如何去掉 Liferay 页面下方的 Powered by Lifray
- 清除 thinkphp跟php的 X-Powered-By
- 清除 thinkphp跟php的 X-Powered-By
- 清除 thinkphp跟php的 X-Powered-By
- 如何去掉Powered by ECShop v2.7.1
- ecshop 如何去掉Powered by ECShop版权
- 如何去掉powered by ShareSDK字样
- (ap)Proximated (x)Emacs Powered by Python
- 关闭 php X-Powered-By 信息
- 去掉Powered by ECShop
- getElementByID getElementsByName getElementsByTagName用法详解
- 操作系统、网络DELPHI函数
- Java的synchronized关键字:同步机制总结
- FCKeditor应用
- 深入剖析wince6.0下kernelIOctl()的调用过程分析
- 如何去掉IIS中Response Headers的X-Powered-By、X-AspNet-Version和Server项
- java.sql.SQLException: Operand should contain 1 column(s)
- 就这样 误打误撞的碰到了csdn
- SWT播放视频
- 如何使得OCX控件能响应PreTranslateMessage消息?
- Design Pattern - Factory Method(C#)
- 1. free(): invalid next size (fast)
- 有两天没练手了
- 初一数学题教孩子都很吃力了