多个tomcats在同一个端口但不同的本地IP

时间:2014-08-19 21:56:40

标签: tomcat

我有这样的Windows 7主机文件:

127.0.0.1       localhost
192.168.78.128  cloudera-vm440
127.0.0.61      tomcat61
127.0.0.71      tomcat71

有了这个,我想我可以在不同的本地IP上引出两个tomcats但是同样的端口8080等。

这不起作用。我得到了

Caused by: java.lang.Exception: Socket bind failed: [730048] Only one usage of each socket address (protocol/network address/port) is normally permitted.  
at org.apache.tomcat.util.net.AprEndpoint.bind(AprEndpoint.java:430)
at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:623)
at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:434)
at org.apache.catalina.connector.Connector.initInternal(Connector.java:981)

这是它的方式还是我能做些什么呢?

2 个答案:

答案 0 :(得分:0)

您有两个套接字试图侦听相同的IP和端口。基本上,两个插座正在尝试连接到完全相同的位置。这是不可能的。比方说我的IP地址是192.168.0.235。我的“家庭”IP是127.0.0.1。这些标识相同的实际网络地址:我的电脑。现在,如果我两个都使用端口8080,我只是尝试两次使用相同的地址。

答案 1 :(得分:0)

仅仅编写主机文件是不够的。您需要在Tomcat中配置连接器以指定侦听地址。默认情况下,Tomcat连接器将侦听0.0.0.0。