为什么ASP.NET框架在响应中添加“X-Powered-By:ASP.NET”HTTP标头?

时间:2009-08-17 14:42:31

标签: asp.net http-headers

我很想知道.Net Framework在其响应中添加'X-Powered-By:ASP.NET'Http Header是否有特定原因?其他Web服务器(Apache,httpd)是否做同样的事情?

编辑:我知道它可以改变。我想知道是否有理由保留或保留原样?

7 个答案:

答案 0 :(得分:18)

我知道PHP会这样做。我想没有真正的目的,除了营销和使脚本小子更容易找到合适的受害者。对于PHP,最好完全禁用该标志,因为它显示了PHP版本,因此使服务器更容易受到攻击。

编辑:谁知道,它也可能会带来更好的搜索结果......; - )

答案 1 :(得分:6)

使用IIS时,它是默认的自定义标头。它是IIS中的一个设置,如果您愿意,可以更改它。

使用IIS6 -

  • 单击“HTTP标头”选项卡
  • 您可以在“自定义HTTP标头”框中编辑或删除标题。

答案 2 :(得分:5)

可能存在这样的网站,例如Netcraft这样的网站可以汇总运行IIS和ASP.NET的服务器数量的统计信息。在.NET发布时,这曾经被认为是一件很重要的事情。通过声明使用ASP.NET启动的 n 站点数量,Microsoft可以为仅根据其他用户数量采用技术的公司提供指标。

由于PHP应用程序可以通过在Apache中设置相同的标头来模仿ASP.NET应用程序,因此我认为没有强大的技术理由。我可以想象一些天真的客户端应用程序,如FrontPage 2003或SharePoint Designer可能会使用这样的标头来验证它们确实连接到启用ASP.NET的站点,但这是我的推测。

答案 3 :(得分:4)

通过页面标题发送服务器/执行引擎的签名是相当常见的,无论您运行的是Apache和PHP,还是IIS和ASP.NET。我想,只是作为一些免费的宣传。

答案 4 :(得分:1)

Tomcat,Apache,WebSphere,JBoss,你说出来了。

显然,它实际上不是标准的HTTP标头字段。

答案 5 :(得分:1)

"X-Powered-By:"不是标准标题,但是"Server: "是(并且它显然用于相同目的)。

在SaaS和云服务的世界中,Web框架是“战略性”资产,每一小块房地产都被广泛征服......有时候是作弊方式。

答案 6 :(得分:0)

如果在“如何更改”的上下文中使用“为什么” - 请转到站点的IIS属性,打开“HTTP标头”选项卡并更正自定义HTTP标头。