我们最近在Centos上将tomcat从版本7升级到了tomcat9.x。当我们启动tomcat时,我们看到以下错误-org.apache.catalina.util.LifecycleBase.handleSubClassException无法初始化组件[Connector [HTTP / 1.1-8080]],其原因是:java.net.BindException:地址已在使用中
Server.xml更改:连接器端口=“ 8060”协议=“ org.apache.coyote.http11.Http11Protocol” redirectPort =“ 8080” proxyName =“ myproxy” proxyPort =“ 443” scheme =“ https” />即使catalina。 out显示此错误,我们的应用程序运行正常。我们验证了端口8080上没有其他服务正在运行,并且当我们切换回tomcat 7时,日志中没有显示错误。我们确实将nginx作为tomcat的反向代理,但它侦听端口80和443,并在端口8060(http://127.0.0.1:8060)上与tomcat9进行通信。现在,我们已经花了整整2天的时间解决此问题,我们将不胜感激。
抱歉,你不知道,Connector中redirectPort的作用是什么?在上述情况下,这是否意味着nginx将在端口8060上与tomcat通信,并且tomcat将在内部将请求重定向到端口8080?
提前致谢。
解决了该问题,Jboss在同一端口的同一台虚拟机上运行,这导致“地址已在使用中”错误。
lsof -n -i:80 | grep LISTEN->命令查找在端口8080上运行的pid
ps -ef | grep pid->查看指定pid上正在运行的内容。