以windows为例。

1 思路

1.1 前置条件

控制面板>所有控制面板项>系统>高级系统设置>系统变量(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 参考/推荐文献

[Web服务容器/Apache Tomcat]WINDOWS系统下:一台机器部署多个[解压版]Tomcat的更多相关文章

  1. Windows系统下MySQL添加到系统服务方法(mysql解压版)

    MySQL软件版本:64位 5.7.12 1.首先配置MySQL的环境变量,在系统环境变量Path的开头添加MySQL的bin目录的路径,以“;”结束,我的路径配置如下: 2.修改MySQL根目录下的 ...

  2. Win10系统下的MySQL5.7.24版本(解压版)详细安装教程

    进入MySQL官网下载压缩包 MySQL官网:https://www.mysql.com/ 将页面拉到最底,点击MySQL Community Server 跳转到下载页面,默认选择是最新版MySQL ...

  3. 解压版Tomcat配置

    解压版Tomcat配置(本例Tomcat6):   一 配置Tomcat 1 下载Tomcat Zip压缩包,解压.      如果增加tomcat的用户名和密码,则修改/conf/tomcat-us ...

  4. 解压版tomcat设置为系统服务

    1.先关闭tomcat,在"开始 "→"运行 "中输入cmd 命令,进入MS-DOS界面 2.进入 到tomcat的bin目录下 (解压版tomcat存放目录, ...

  5. Tomcat Windows 系统下安装及注意事项

    1 获取Tomcat 安装包  http://tomcat.apache.org/ tar.gz 文件是Linux系统下的安装版本 exe文件是 Windows系统下的安装版本 zip 文件是Wind ...

  6. Windows系统——后缀为.zip.00X的zip分卷解压

    Windows下后缀为*.zip.001文件的解压方法: 后缀为*.zip.001文件用winrar无法解压, 解决办法是在windows下打开命令行界面, 输入:copy /B xx.zip.001 ...

  7. 同一台电脑上配置多个解压版tomcat方法(本例安装两个)

    一.在环境变量中设置变量() CATALINA_HOME = tomcat路径一 CATALINA_BASE = tomcat路径一 CATALINA_HOME2 = tomcat路径二 CATALI ...

  8. linux下安装配置jdk(解压版)

    在linux下登录oracle官网,下载解压版jdk    传送门 系统默认下载到"下载"目录中 创建要将该文件解压的文件夹: 其中 -p 参数代表递归创建文件夹(可以创建多级目录 ...

  9. Apache+Tomcat+jk windows环境下的集群部署

    记一次在Windows服务器上搭建apatch+tomcat+jk的集群搭建过程,其中也遇到了很多问题,总结一下. 一.准备工作 1.apache-tomcat-7.0.88 2.Apche http ...

  10. 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. ...

随机推荐

  1. React中的固定组件(随遇随记)

    <React.StrictMode></React.StrictMode>对组件中使用严格模式 <React.Fragment></React.Fragmen ...

  2. java mysql删除表中多余的重复记录(多个字段),只留有id最小的记录

    mysql 删除表中多余的重复记录(多个字段),只留有id最小的记录 DELETE FROM 表1 f WHERE (f.字段1,f.字段2) IN ( SELECT 字段1,字段2 FROM 表1 ...

  3. 05 HDFS Java API应用实例

    一.在Ubuntu系统中安装和配置Eclipse 二.利用hadoop 的java api,向HDFS写一个文件. 三.从HDFS读取一个文件的内容.

  4. 基于CMMI的软件工程及实训指导 第一章

    第一章 软件工程基础 1. 软件工程概述 1.1 软件工程概念 软件工程是从管理和技术两方面来研究如何采用工程的概念.原理和技术方面并加以综合,指导开发人员更好地开发和维护计算机软件的一门新学科. 1 ...

  5. python.字典方法。第三天

    当需要为字典中的键设置默认值时,当该键没有任何值时使用它.代码如下 spam={'name':'Pooka','age':'5'} if 'color' not in sapm; spam['colo ...

  6. LoadRunner压力测试(web)

    1.打开Virtual User Generator->新建脚本->选择创建新脚本类型,web-HTTP,HTML->创建 2.录制脚本 3.停止脚本录制 4.创建controlle ...

  7. shell命令查找文件

    1.find命令的参数下面是find命令一些常用参数的例子,有用到的时候查查就行了,像上面前几个贴子,都用到了其中的的一些参数,也可以用man或查看论坛里其它贴子有find命令手册使用name选项文件 ...

  8. Linux应用开发之【多线程开发-回调函数】

    原来我一直都不懂回调函数是什么 ... Callback Function 定义:通过函数指针调用的函数 在理解这个回调函数之前我们需要先了解回调机制 回调机制在编程中体现在:特定的情况发生后,返回并 ...

  9. VBA类模块完全教程(www.accessoft.com软件网)

    这份礼物送给现在想学习类知识或曾经学过但因为各种原因没有"修成正果"的朋友,我期望的结果是这篇文章后,您可以在类模块中像在标准模块中写代码一样熟练,我也期望不至于太乏味而使您没有耐 ...

  10. python学习记录(二)-特殊函数

    闭包函数 def outer(): var = 100 def inner(): nonlocal var var += 200 print(var) return inner res = outer ...