在日常开发中,测试服务器会安装多个tomcat服务器部署不同的项目,这里简单介绍下如何同时部署多个tomcat
准备工作:
环境:linux
系统:centos6.4-x86-x64
安装工具:apache-tomcat-7.0.85
一、原理讲解:
1.tomcat在启动时会去查找tomcat的bin目录下,根据catalina.sh文件查看是否配置了jdk环境,根据setclasspath.sh文件查看是否配置了jdk环境,该文件配置了默认配置了tomcat安装目录。
2.tomcat服务器需配置三个端口才能启动,安装时默认配置并启用了这三个端口,所以当要运行多个tomcat服务时需要修改这三个端口不能相同,防止端口冲突。
二、详细步骤
1.首先创建多个tomcat:
2.在tomcat的bin目录下打开catalina.sh文件(如tomcat_mall_18091/bin)找到下面的注释代码
OS specific support. $var _must_ be set to either true or false.
在该注释行的写如下代码:
JAVA_OPTS="-Xms1024m -Xmx2048m -Xss1024K -XX:PermSize=1024m -XX:MaxPermSize=2048m"
export JAVA_HOME=/opt/jdk/jdk1.7.0_79
export JRE_HOME=/opt/jdk/jdk1.7.0_79/jre
3.修改端口号,在tomcat的conf下修改server.xml文件
监听tomcat关闭的端口(默认为8005):
<Server port="8005" shutdown="SHUTDOWN">
http访问端口(默认为8080端口):
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
负责接收其他http服务器的请求端口(默认为8009):
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
则在创建的2个tomcat中分别修改这3个端口号不同,这样启动tomcat就不会报端口冲突
比如tomcat_mall_18091这3个端口号分别是8005,18091,8009;
而tomcat_kstore_18092这3个端口号分别是8006,18092,8010
4.在tomcat的bin目录下打开setclasspath.sh文件(如tomcat_mall_18091/bin),添加jdk安装目录
export JAVA_HOME=/opt/jdk/jdk1.7.0_79
export JRE_HOME=/opt/jdk/jdk1.7.0_79/jre
若没有添加这句话则tomcat启动会报:
Cannot find /opt/tomcat/tomcat_mall_18092/bin/setclasspath.sh
This file is needed to run this program
到此结束。
测试配置是否成功:
访问第一个tomcat_mall_18091
访问第二个tomat_kstore_18092
如上截图表示设置没有问题。