我在 Fedora 14 机器的 8080 端口上运行一个 tomcat 服务器。我可以从同一台机器获取网页。但是当我尝试从另一个网络的 Windows 机器访问它时,Web 浏览器超时了。
如果我在端口 80 上运行相同的 tomcat,则可以从我的 Windows 计算机访问它。注意:从我的 Windows 计算机,可以“ping” Fedora 框。有人知道这是什么原因吗?
答案1
这可能是 Linux 机器、Windows 机器或两者之间的防火墙 - 如果您只是通过 telnet 8080 访问它,会发生什么?尝试禁用 Windows 防火墙,因为这通常是一种非常快速和简单的方法,可以消除问题的一个潜在来源。然后,如果可以的话,同时禁用 Linux 机器上的防火墙 - 如果这不起作用,那么您可能需要与网络/安全人员交谈。它在服务器本身上确实运行正常,对吗?您检查过了?
答案2
您可以采取一些措施来证明问题出在网络中:
再检查一下 tomcat 是否在应该监听的位置:
netstat -nat|grep :8080
你应该看到类似这样的内容:
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN
如果没有,则 Tomcat 启动时出现问题。检查 catalina.out。
尝试在 Fedora 机器上本地访问 tomcat:
w3m http://localhost:8080/
监听网络,看看 Windows PC 的请求是否到达服务器。以 Fedora 机器上的 root 身份运行以下命令:
tcpdump port 8080
尝试访问时保持此操作运行http://fedorabox:8080/从您的 Windows PC 上。如果 tcpdump 没有显示任何流量,您的请求显然在途中丢失了,这意味着您必须与网络人员沟通。