如何检测Web服务器类型

时间:2009-07-08 11:29:43

标签: c# webserver

我正在尝试检测哪个Web服务器类型正在运行域,因此处理此问题的最佳选择是什么。

我正在做一个C#应用程序。

2 个答案:

答案 0 :(得分:6)

您可以向服务器发出请求并检查响应标头中“Server”的值

例如

using System;
using System.Net;

public class TestApp {
    public static void Main( string[] args ) {
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.stackoverflow.com/");
        WebResponse response = request.GetResponse();
        Console.Out.WriteLine( response.Headers.Get("Server") );
    }
}

// Output:
// Microsoft-IIS/7.0

答案 1 :(得分:1)

另一种简单的方法是使用网络浏览器(Chrome,FireFox,IE)。它们中的大多数允许按F12键访问其开发人员模式。然后,访问Web服务器的URL,然后转到“网络”标签和“响应头”选项,以查找是否存在“服务器”响应头。

坏消息是响应中可能不包含“ Server”标头,因为它是可选的,实际上,如果出于安全考虑,不建议使用它(否则,黑客可能会知道正在使用的服务器,并且它的版本,以便她可以集中精力于它的漏洞以攻击服务器)