如何确定端口80上正在侦听的服务器

时间:2010-07-09 10:50:15

标签: java webserver port80

我需要确定Java中端口80上运行的Web服务器(IIS,Apache,Jetty)。

是否有任何解决方案可以通过端口80获取信息?

Thanx和reguards

的Stefan

2 个答案:

答案 0 :(得分:6)

你可以问它 - 发出一个HEAD请求,例如在端口80上打开TCP连接,然后发送

HEAD / HTTP/1.0

HEAD / HTTP/1.1
Host: the.server.hostname.com

并且回复应包含服务器行

Server: Microsoft-IIS/5.1

等等。

但是,如果你想问OS哪个进程,我不知道Java可移植的方式。您将在Linux上运行netstat -ano或(-anp)的命令行,它将为您提供在端口80上侦听的进程号,然后您可以查看确切地知道哪个服务器具有该端口

答案 1 :(得分:3)

查看Server: HTTP header。它通常包含这样的内容:

Server: Apache/2.2.10 (SpaceNet) PHP/5.2.6

当然,服务器可以发送它喜欢的任何内容,或者根本不发送任何内容。