Tomcat Solr超时

(Plesk 10.4 centos 5.8 linux apache2服务器,端口8080上的Tomcat5和Apache Solr)

我得到“连接超时”在请求domain.com:8080或www.domain.com:8080或ip.ad.dr.ess:8080

我可以find为什么这可能似乎不是这样的每一个理由:

  • Plesk认为Tomcat运行良好,并将其列为主动服务。
  • 防火墙目前在端口8080上具有全部接受规则。
  • 在catalina tomcat日志(/ var / log / tomcat5)中没有任何相关的东西 – 只是上次启动tomcat时的一些东西。 所有失败的请求都没有logging。
  • netstat -lnp | grep 8080 netstat -lnp | grep 8080给出了以下内容,我相信这意味着Tomcat正在监听来自任何IP和任何端口的所有IP地址的端口8080的请求(请纠正我,如果我错了):

 tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 4018/java 

这涵盖了我能find的这个时间的每一个原因 – 所以我必须错过一些基本的东西。

看来Tomcat正在运行,听到正确的端口,正在获取一个合适的IP地址,并不会被防火墙阻挡,并且在收到请求之后不会失败,这种方式会被logging在日志中(所以我相信它可以“不会记忆,或类似的东西)。

我完全不知道如何继续debugging。 我一定忽略了一些明显的东西。 谁能帮忙?

那么,事实certificate,有防火墙,然后有防火墙

我曾经假设在Parrallels / Plesk / VZ防火墙UI中为端口设置允许访问规则就足以阻止防火墙阻止访问该端口。 我错了,这个UI并没有触及完全独立的基于iptables的防火墙层,它阻止了除了选定IP以外的所有IP地址访问8080。

在我的Plesk设置(这可能是特定于我的托pipe安排,我不知道)解决scheme是添加规则/etc/firewall/include如下所示:

 $IPTABLES -I INPUT -p tcp --dport 8080 -s ip.ad.dr.ess -j ACCEPT $IPTABLES -I OUTPUT -p tcp --sport 8080 -d ip.ad.dr.ess -j ACCEPT 

…随后service firewall restart (交换ip.ad.dr.ess为您要白名单的IP地址)。 我很确定,在大多数托pipe安排中,您可以使用/sbin/iptables而不是$IPTABLES作为命令运行这些命令行,但是拥有自定义防火墙设置文件非常方便。

我想这是一个“如果你给一个男人一个拐杖(像Plesk),他会认为他可以依靠那个拐杖”