我可以在同一台机器上运行两个具有两个不同端口的Tomcat服务器吗?它会造成任何问题吗?当我运行tomcat时,它将在任务管理器中创建javaw.exe
文件。
答案 0 :(得分:59)
除了更改下面其中一个答案中描述的Connector port
protocol="HTTP/1.1"
之外。
我认为需要更改“Shutdown”的服务器端口
<Server port="8005" shutdown="SHUTDOWN">
以及AJP
端口号
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
如果要并行运行多个tomcat实例。
答案 1 :(得分:29)
是的!您可以。您需要将端口更改为另一个实例。
为此,请按照以下步骤操作。
1。)在{Tomcat安装文件夹} \ conf \
中找到server.xml2.)查找以下类似陈述
<!-- Define a non-SSL HTTP/1.1 Connector on port 8180 -->
<Connector port="8080" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
3.。)关于Tomcat的server.xml文件引用它在端口8080上运行。将Connector port =“8080”端口更改为任何其他端口号。
例如
<Connector port="8181" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
4)编辑并保存server.xml文件。重启Tomcat。完成
答案 2 :(得分:13)
是的,这绝对没问题。我已经在很多场合做过了。您需要检查所有您用于Tomcat的端口。我不记得它是否仍然有一个特殊的“本地控制”端口,但如果是这样,那些也需要不同。
答案 3 :(得分:7)
一般来说,我们还设置了CATALINA_HOME属性。所以启动脚本首先读取catalina_home,然后从中找出其余的路径。如果设置了此环境变量,并且您尝试从任何复制粘贴tomcat安装位置运行tomcat,那么将运行CATALINA_HOME指向的tomcat。
因此,在从同一台机器运行两个tomcat时,请删除CATALINA_HOME属性。这样,它将根据您运行启动脚本的目录设置CATALINA_HOME属性。
答案 4 :(得分:6)
添加一些指向如何实现这一目标的详细说明:
答案 5 :(得分:3)
这是我在Windows上运行两个Tomcats(Tom1和Tom2)的经验/过程:
根据http://www.ntu.edu.sg/home/ehchua/programming/howto/Tomcat_HowTo.html
但是,Tom1启动正常,但不是Tom2。
因此,除了上述内容之外,在server.xml中,进行/更改以下内容(在Tomcat 6.0.44,JDK 1.6.0_45上):
第22行:Tom1关闭端口= 9001
第22行:Tom2关闭端口= 9002
第53行:Tom1服务名称=“Catalina1”
第53行:Tom2服务名称=“Catalina2”
第69行:Tom1连接器(http)= 9001
第69行:Tom2连接器(http)= 9002
第71行:Tom1重定向端口= 8443
第71行:Tom2重定向端口= 8444
第90行:Tom1连接器(ajp)= 8009
第90行:Tom1重定向= 8443
第90行:Tom2连接器(ajp)= 8010
第90行:Tom2重定向= 8444
第102行:Tom1引擎名称=“Catalina1”
第102行:Tom2引擎名称=“Catalina2”
启动每台服务器
瞧!
答案 6 :(得分:1)
您可以在服务器/ PC上运行无限的tomcat实例,当然您需要使用不同的端口定义每个实例。
答案 7 :(得分:1)
如前所述,您可以省略CATALINA_HOME环境变量并使用catalina.sh脚本来管理容器的生命周期,或者您可以定义另一个变量(如CATALINA_HOME1)以指向新的tomcat的安装目录并修改它的catalina。 sh脚本使用CATALINA_HOME1而不是原始的CATALINA_HOME引用。
在任何情况下,您都可以通过省略名为CATALINA_HOME引用的任何环境变量并将其链接到相应的tomcat的catalina.sh脚本来避免这一切。
示例:强>
cd /usr/sbin
ln -s /usr/local/java/apache-tomcat-6.0.37/bin/catalina.sh catalina1
ln -s /usr/share/java/apache-tomcat-6.0.37/bin/catalina.sh catalina2
然后像这样开始你的tomcats(从任何地方):
catalina1 start
catalina2 start
汤姆