2011-12-28 75 views
1

我在server.xml中配置了监听端口8005关机, 但始终收到连接拒绝错误。另外,通过telnet/netstat检查显示,没有监听端口8005.是否存在另一个配置/策略设置,应该为正常关闭tomcat而完成? 谢谢。如何检查Tomcat是否配置为侦听关机?

回答

2

它存储在server.xml

<Server port="8005" shutdown="SHUTDOWN">

+0

正是我。但没有奏效。 – user710818 2011-12-28 10:33:54

3

除非你张贴在那里你配置Tomcat server.xml中的一个片段,告诉我们它的版本,并提供启动日志和脚本,也没办法我们可以帮助你更好。

看看这篇文章,从你的文章我明白你不能telnet到8005,但也许你错过了一些东西,也许有些程序占用了一些tomcat占用的端口?检查你的服务器日志并找出它不想连接的原因。如果它只是连接被拒绝,那么你有一个端口/防火墙问题。

Several ports (8005, 8080, 8009) required by Tomcat Server at localhost are already in use

PS 如果一切都留给了标准配置,那么你的Tomcat服务器应该开始监听关闭端口8005。如果检查服务器日志,当你关闭,你应该有一些像这样(Tomcat的7.23):

2011年12月28日下午4点01分22秒等待org.apache.catalina.core.StandardServer INFO :一个有效的关闭命令通过关闭端口接收。 停止服务器实例。

此外,另一个要注意的事情:

  1. 你启动Tomcat作为根(我假设你使用的是一些非 Windows操作系统)?

  2. 您是否使用安全提供程序?

  3. 从你的帖子我无法理解你的服务器是否启动。 如果您提供了部分日志,或许我们可以帮助您更好地使用 。

    最后一步检查是禁用防火墙/ iptables或任何 可能会阻止您打开一个端口。检查将会发生什么 如果将端口设置为高于32000的数字,则某些安全性 设置可能会阻止您打开较低数字端口。

编辑:为了进一步增加,生活仍在忙着可以防止服务器正常关闭,如果你不履行其关闭挂钩非守护线程,但作为您的服务器不希望连在8005绑定,你会得到'连接被拒绝'的错误,我相信这是一个防火墙/端口/权限问题。我只能建议你以root/admin或其他方式运行它,然后尝试使用Netbeans安装附带的嵌入式tomcat。此外,请检查您的Tomcat是否以一些奇怪的标志开始,安装了安全管理器,或者使用权限文件来限制您的jvm。另外,如果您使用的是Windows并且您的Tomcat位于Program文件中,或者您将其作为服务启动,则可能会出现一些奇怪的行为,请从命令行启动它。另外,尝试一个更新的tomcat,也尝试一个更新的jvm,也尝试一个开箱即用的tomcat,你可以从官方网站下载它。

编辑,编辑:

大概是出于安全的考虑,你不准日志贴,但在排除故障,将真正帮助,看看它试图在8005绑定和失败的部分。

+0

<服务器端口= “8005” 关机= “SHUTDOWN”> – user710818 2011-12-28 10:33:07

+0

startup.sh和shutdown.sh的Tomcat – user710818 2011-12-28 10:33:29

+0

标准文件。我没有改变它们。 – user710818 2011-12-28 10:40:06

0

这可能是,你必须设置在JAVA_OPTS的-server的情况。这样可以防止服务器开始在端口8005上进行侦听。我试图找出发生这种情况的原因并解决了您的问题。

JAVA_OPTS="-Dfile.encoding=UTF-8 \ 
    -Dcatalina.logbase=/var/log/tomcat8 \ 
    -XX:+DoEscapeAnalysis \ 
    -XX:+UseConcMarkSweepGC \ 
    -XX:+CMSClassUnloadingEnabled \ 
    -XX:+UseParNewGC \ 
    -Xms3G -Xmx3G" \ 
    -server