原理讲解
Tomcat 在启动时会去查找 Tomcat 的根目录, 并且会通过 CATALINA_BASE 和 CATALINA_HOME 这两个变量去查找, 所以不同的一台服务器上不同 Tomcat 的根目录以及上述两个变量的值是不一样的.
Tomcat 服务器需配置三个端口才能启动, 安装时默认配置并启用了这三个端口, 所以当要运行多个 Tomcat 服务时需要修改这三个端口, 不能相同, 防止端口冲突.
详细步骤
一, 修改 / etc/profile 文件
需要在文件中添加多组 CATALINA 环境变量 (有几个 tomcat 就添加几组)
- ############## Tomcat1 ##############
- export CATALINA_BASE=/home/tomcat/apache-tomcat-8.5.8
- export CATALINA_HOME=/home/tomcat/apache-tomcat-8.5.8
- export TOMCAT_HOME=/home/tomcat/apache-tomcat-8.5.8
- ############## Tomcat2 ##############
- export CATALINA_2_BASE=/home/tomcat/apache-tomcat-admin
- export CATALINA_2_HOME=/home/tomcat/apache-tomcat-admin
- export TOMCAT_2_HOME=/home/tomcat/apache-tomcat-admin
修改完成之后 source /etc/profile
二, 修改 tomcat 根目录下 catalina.sh 文件
- # OS specific support.$var _must_ be set to either true or false.
- cygwin=false
- darwin=false
- os400=false
- hpux=false
- case "`uname`" in
- CYGWIN*) cygwin=true;;
- Darwin*) darwin=true;;
- OS400*) os400=true;;
- HP-UX*) hpux=true;;
- esac
- # added 2018-05-18
- export CATALINA_BASE=$CATALINA_2_BASE
- export CATALINA_HOME=$CATALINA_2_HOME
在 catalina.sh 文件内添加上述的内容
三, 修改端口: 在 server.xml 文件中修改端口
http 访问端口 (默认为 8080 端口):
<Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" />
监听 tomcat 关闭的端口 (默认为 8005):
- <Server port="8005" shutdown="SHUTDOWN">
- <Listener className="org.apache.catalina.startup.VersionLoggerListener"
- />
负责接收其他 http 服务器的请求端口 (默认为 8009):
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
修改完端口之后, 要重启 tomcat, 并且在防火墙里也要开放以上端口.
来源: http://www.bubuko.com/infodetail-2989099.html