2010-07-09 132 views
3

我需要确定在Java中的端口80上运行的是什么Web服务器(IIS,Apache,Jetty)。如何确定在端口80上监听什么服务器

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

感谢名单和reguards

斯特凡

+0

为什么你需要知道? – EJP 2010-07-12 07:10:02

回答

6

你可以问它 - 发出HEAD请求,例如打开一个80端口的TCP连接,并只发送

HEAD/HTTP/1.0 

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

和答复应包含服务器产品线

Server: Microsoft-IIS/5.1 

除其他事项。

如果你想询问操作系统哪个进程,但我不知道Java便携方式。你可以运行netstat -ano或者(我认为linux上的-anp)命令行,它会给你在80端口上侦听的进程号,然后你可以查看到底是哪个服务器有端口。

3

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

Server: Apache/2.2.10 (SpaceNet) PHP/5.2.6 

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

相关问题