我想在同一个Windows上运行2个tomcat实例。
所以我采取了以下步骤:
的startup.bat
set CATALINA_BASE=C:\Programs\apache2
set CATALINA_HOME=C:\Programs\apache1
C:\Programs\apache1\bin\startup.bat
shutdown.bat
set CATALINA_BASE=C:\Programs\apache2
set CATALINA_HOME=C:\Programs\apache1
C:\Programs\apache1\bin\shutdown.bat
我还将 apache2 的server.xml中的以下内容更改为:
<Server port="8006" shutdown="SHUTDOWN">
<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8444" />
<Connector port="8010" protocol="AJP/1.3" redirectPort="8444" />
在 apache1 中,它是:
<Server port="8005" shutdown="SHUTDOWN">
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
当我从apache1运行startup.bat时,虽然在其server.xml中配置为端口8080,但它占用端口8081.这样当我想从apache2运行startup.bat时 - 端口很忙!无论哪种方式,如果我第一次尝试apache2然后apache1我不能同时运行。
有什么问题?
我正在使用带有tomcat 7的Windows 7
答案 0 :(得分:1)
默认CATALINA_HOME
在catalina.bat
中设置,并且相对于bin
子目录的位置。
因此,您可以在c:\tomcat1
中解压缩tomcat二进制文件,在c:\tomcat2
中解压缩另一个,并且每个二进制文件将自动拥有自己的CATALINA_HOME
。
至于您使用共享CATALINA_HOME
描述的方案,我看不到任何阻止它运行正常的情况。我会双重检查您的startup.bat
正在调用正确的实例,并且每个server.xml
都配置了正确的端口。
答案 1 :(得分:0)