[Web服务容器/Apache Tomcat]WINDOWS系统下:一台机器部署多个[解压版]Tomcat
以windows为例。
1 思路
1.1 前置条件
- 已成功配置JDK (JAVA_HOME / Path)
控制面板>所有控制面板项>系统>高级系统设置>系统变量(S):
JAVA_HOME=D:\Program Files(x86)\Java\jdk1.8.0_111\
Path=%JAVA_HOME%\bin
Path=%JAVA_HOME%\jre\bin
CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
1.2 涉及配置项
- Tomcat配置文件: startup.bat / catalina.bat / shutdown.bat / service.bat
- 端口: SHUTDWN(Default:8005) / HTTP(Default:8080) / AJP(Default:8009) / JDWP/JPDA(Default:5005)
(各Tomcat之间全部的端口都不应重合,避免端口冲突,启动失败) - 环境变量: CATALINA_HOME_xxx / CATALINE_BASE_xxx / CATALINA_OPTS/JPDA_OPTS(涉及远程调试时 即 启用JDWP/JPDA服务时)
CATALINA_HOME : 安装目录(共享 : lib目录和bin目录)
CATALINE_BASE : 工作目录(排除 : lib目录和bin目录)
2 解决方案与过程
下载Apache Tomcat安装包
(Eg: apache-tomcat-8.5.58.zip)配置 server.xml : SHUTDWN(Default:8005) / HTTP(Default:8080) / AJP(Default:8009)
(将默认端口修改一下,避免后续的Tomcat因端口冲突而启动失败)
<Server port="8005" shutdown="SHUTDOWN"> <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
- 检查 JPDA远程调试端口 (JDWP/JPDA(Default:5005))
【特别注意】当启用了JPDA远程调试服务时: 检查一下 自行配置的Tomcat的 startup.bat / catalina.bat 中 JPDA的远程调用端口是否存在冲突的情况!!!
SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
方式1: 纯配置Tomcat(不配置系统变量)
推荐此方式
- 配置 startup.bat/catalina.bat
特别注意:
1.路径中存在空格符等情况时,一定是将整个'='赋值语句用双引号""给全部括起来
set "CATALINA_HOME=D:\Program Files(x86)\Apache Tomcat\Muiti-Tomcats\apache-tomcat-8.5.33-D"
set "CATALINA_BASE=D:\Program Files(x86)\Apache Tomcat\Muiti-Tomcats\apache-tomcat-8.5.33-D"
配置好 startup.bat 后,其实已可以启动Tomcat服务。
- 配置 shutdown.bat
set "CATALINA_HOME=D:\Program Files(x86)\Apache Tomcat\Muiti-Tomcats\apache-tomcat-8.5.33-D"
set "CATALINA_BASE=D:\Program Files(x86)\Apache Tomcat\Muiti-Tomcats\apache-tomcat-8.5.33-D"
配置好 shutdown.bat 后,方便后续关闭Tomcat服务。
- 配置 service.bat
如果需要将Tomcat发布成Windows服务(services.msc: 开机自启/手动启动等),则需借助 service.bat,反之则不需配置此脚本文件。
发布/卸载 WINDOWSS服务: service[.bat] install / service.bat remove 或(指定服务名称,推荐) service[.bat] install Tomcat8A / service[.bat] remove Tomcat8A
(install执行后, 出现 The service "Tomcat8A" has been installed 说明设置服务成功)
启动/停止 WINDOWS服务: CMD> services.msc>(选中目标服务)>[启动(net start Tomcat8A)/停止(net stop Tomcat8A)]
``` shell
set CATALINA_HOME=D:\Program Files(x86)\Apache Tomcat\Muiti-Tomcats\apache-tomcat-8.5.33-D\
set CATALINA_BASE=D:\Program Files(x86)\Apache Tomcat\Muiti-Tomcats\apache-tomcat-8.5.33-D\
```
- 启动并验证 N个Tomcat。浏览器分别访问:
http://localhost:8080
http://localhost:8081
http://localhost:8082
...
方式2: 配置系统变量
每个Tomcat都需要 CATALINA_HOME 和 CATALINA_BASE变量,都一起配置进系统环境变量,那OS如何区分?
思路:
1.修改系统环境变量 CATALINA_HOME/BASE 的名称为 CATALINA_HOME/BASE_X (每个Tomcat的X都使用不同的代码)
2.修改并替换 配置文件 startup.bat / catalina.bat / shutdown.bat / service.bat 的 CATALINA_HOME 和 CATALINA_BASE 为 CATALINA_HOME_X 和 CATALINA_BASE_X
X 参考/推荐文献
- Apache Tomcat - Official Website
- Windows下使用service.bat安装tomcat服务, 启动停止tomcat服务 - 博客园
- Tomcat 下载安装,启动,停止,注册服务,开机自启 - CSDN
- 把tomcat服务器配置为windows服务的方法 - CSDN
[Web服务容器/Apache Tomcat]WINDOWS系统下:一台机器部署多个[解压版]Tomcat的更多相关文章
- Windows系统下MySQL添加到系统服务方法(mysql解压版)
MySQL软件版本:64位 5.7.12 1.首先配置MySQL的环境变量,在系统环境变量Path的开头添加MySQL的bin目录的路径,以“;”结束,我的路径配置如下: 2.修改MySQL根目录下的 ...
- Win10系统下的MySQL5.7.24版本(解压版)详细安装教程
进入MySQL官网下载压缩包 MySQL官网:https://www.mysql.com/ 将页面拉到最底,点击MySQL Community Server 跳转到下载页面,默认选择是最新版MySQL ...
- 解压版Tomcat配置
解压版Tomcat配置(本例Tomcat6): 一 配置Tomcat 1 下载Tomcat Zip压缩包,解压. 如果增加tomcat的用户名和密码,则修改/conf/tomcat-us ...
- 解压版tomcat设置为系统服务
1.先关闭tomcat,在"开始 "→"运行 "中输入cmd 命令,进入MS-DOS界面 2.进入 到tomcat的bin目录下 (解压版tomcat存放目录, ...
- Tomcat Windows 系统下安装及注意事项
1 获取Tomcat 安装包 http://tomcat.apache.org/ tar.gz 文件是Linux系统下的安装版本 exe文件是 Windows系统下的安装版本 zip 文件是Wind ...
- Windows系统——后缀为.zip.00X的zip分卷解压
Windows下后缀为*.zip.001文件的解压方法: 后缀为*.zip.001文件用winrar无法解压, 解决办法是在windows下打开命令行界面, 输入:copy /B xx.zip.001 ...
- 同一台电脑上配置多个解压版tomcat方法(本例安装两个)
一.在环境变量中设置变量() CATALINA_HOME = tomcat路径一 CATALINA_BASE = tomcat路径一 CATALINA_HOME2 = tomcat路径二 CATALI ...
- linux下安装配置jdk(解压版)
在linux下登录oracle官网,下载解压版jdk 传送门 系统默认下载到"下载"目录中 创建要将该文件解压的文件夹: 其中 -p 参数代表递归创建文件夹(可以创建多级目录 ...
- Apache+Tomcat+jk windows环境下的集群部署
记一次在Windows服务器上搭建apatch+tomcat+jk的集群搭建过程,其中也遇到了很多问题,总结一下. 一.准备工作 1.apache-tomcat-7.0.88 2.Apche http ...
- PHP-5.5.10+Apache httpd-2.4.9在Windows系统下配置实战
原文 PHP-5.5.10+Apache httpd-2.4.9在Windows系统下配置实战 环境配置: 程序准备: PHP windows版本下载地址: http://windows.php. ...
随机推荐
- 理解 Shell
理解 Shell shell 的父子关系 用于登录的某个虚拟控制器终端,或在 GUI 中运行终端仿真器时所启动的默认的交互 shell,是一个父 shell.本书到目前为止都是父 shell 提供 C ...
- nginx中proxy_set_header Host $host的作用
nginx配置upstream负载均衡后请求400,配置proxy_set_header Host $host成功.请问这是什么原理? proxy_set_header Host $host有什么作用 ...
- DEM高程数据下载资源
最近发现了几个比较好的DEM高程数据免费下载资源,遂总结一下. clouldRF(https://cloudrf.com/terrain%20data)官方网站有说明其支持的地形数据来源,主要包括如下 ...
- C语言初级阶段4——数组3——字符数组
C语言初级阶段4--数组3--字符数组 字符数组的定义:储存字符类型数据的集合 1.注意:如果用字符串给字符数组初始化,那么不需要{},但是要有"". 2.%s :用来输出字符串的 ...
- js 全屏显示指定区域
小猪最近使用vue开发项目的时候,需要实现将指定区域全拼展示的操作. 小猪选择使用js来实现,实现原理:使用requestFullscreen()方法将指定的dom元素在全屏模式下打开. 支持的部分浏 ...
- porps传参
porps传参(最常用的 布尔传值)(基于前面的步骤进行修改) ①index.js //定义动态路由 props:trueconst routes =[ {path:"/user/:id/: ...
- jjencode|JS混淆手工解析编码过程以及自定义混淆变体改装
此前发布过关于aaencode的混淆编码,此篇文章继续说同作者的jjencode混淆编码的具体过程. 介绍 首先是jjencode的作者提供的编码测试页:http://utf-8.jp/public/ ...
- 解决VUE中document.documentElement.scrollTop为0(转)
原文地址:https://blog.csdn.net/WDCCSDN/article/details/82107374 Vue中document.documentElement.scrollTop的值 ...
- PHP 合并两个二维数组
思路:遍历二维数组,合并两个二维数组的值,赋值给新数组 function mergeArray($arr1,$arr2){ $newArr = []; foreach($arr1 as $v1){ f ...
- JSON常见用法
https://blog.csdn.net/weixin_43631296/article/details/105253434