同时安装两个Tomcat配置教程(Win10)

同时安装两个Tomcat配置教程(Win10)转载注明出处前言在日常开发中,有时候一个Tomcat容器不能满足我们的需求,那么能不能在一台机器上配置多个Tomcat呢?答案是可以的!本文将演示如何在WIN10下配置双Tomcat(Tomcat8.5.x和Tomcat9.0.x)。话不多说,开始吧!Linux下的请参考我的另一篇博客:(后续更新)准备下载ZIP配置多Tomcat推荐都使用ZIP版本,才能修改配置来避免冲突;不准备…

大家好,又见面了,我是你们的朋友全栈君。

转载注明出处 https://blog.csdn.net/zouguo1211/article/details/83997231

前言

在日常开发中,有时候一个Tomcat容器不能满足我们的需求,那么能不能在一台机器上配置多个Tomcat呢?答案是可以的!

本文将演示如何在WIN10下配置双Tomcat(Tomcat8.5.x和Tomcat9.0.x)。话不多说,开始吧!

Linux下的请参考我的另一篇博客:(CentOS7安装多Tomcat配置教程 https://blog.csdn.net/zouguo1211/article/details/84027003)

准备

下载ZIP

配置多Tomcat推荐都使用ZIP版本,才能修改配置来避免冲突;

不准备注册成系统服务的话,选择第一行的ZIP即可;如果想要注册为系统服务,后台运行请选择下图所示版本;

需要注意的是,要被注册为服务的那个版本的Tomcat,请下载带有Windows的ZIP

Tomcat8.5.x官网链接

Tomcat9.0.x官网链接
在这里插入图片描述

解压配置

配置第一个Tomcat(tomcat8.5.x)

如果机器上已经配置过一个Tomcat的朋友,可以直接略过这一节

配置一个Tomcat的过程和普通流程一样,这里机器已经配置了一个Tomcat环境了
在这里插入图片描述
如果对Tomcat的基本配置流程不熟悉的,可以参照我的另一篇博客Win10安装Jdk、Maven、Tomcat与配置详解

这里不再赘述;

配置第二个Tomcat(tomcat9.0.x)

首先将Tomcat9.0.x解压到指定目录;
在这里插入图片描述

1.修改server.xml(端口设置8099)

路径:D:\Java\apache-tomcat-9.0.x\conf下

就是平时我们修改Tomcat端口的步骤:

1)

<!-- Note: A "Server" is not itself a "Container", so you may not define subcomponents such as "Valves" at this level. Documentation at /docs/config/server.html -->
<!-- <Server port="8005" shutdown="SHUTDOWN"> 这里将8005端口修改成不发生冲突的端口 -->
<Server port="8015" shutdown="SHUTDOWN">

2)

<!-- A "Connector" represents an endpoint by which requests are received and responses are returned. Documentation at : Java HTTP Connector: /docs/config/http.html Java AJP Connector: /docs/config/ajp.html APR (HTTP/AJP) Connector: /docs/apr.html Define a non-SSL/TLS HTTP/1.1 Connector on port 8080 -->
<!-- <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> 这里将8080修改成不发生冲突的端口 -->
<Connector port="8099" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

3)

<!-- Define an AJP 1.3 Connector on port 8009 -->
<!-- <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> 这里将8009修改成不发生冲突的端口 -->
	<Connector port="8019" protocol="AJP/1.3" redirectPort="8443" />

2.批量替换修改

将下列圈中的文件,分别用Notepad++(或者其他编辑器)打开,然后将里面的CATALINA_HOME替换为CATALINA2_HOME,将CATALINA_BASE替换为CATALINA2_BASE

文件里如果没有CATALINA_BASE字段,则只替换CATALINA_HOME即可;

最好使用工具替换,以免发生遗漏错误;

如果下载的是不带有注册服务ZIP版,那么只需要修改对应存在的文件即可;
在这里插入图片描述
以catalina.bat文件举例

替换CATALINA_HOME
在这里插入图片描述
替换CATALINA_BASE
在这里插入图片描述
CTRL+S保存,替换下一个文件;

替换小窍门

使用Notepad进行替换时,可以不关闭替换窗口就可保存当前窗口,然后切换窗口,并且替换窗口中的下拉列表会有历史记录,每次只需要用鼠标点击选择相应的字段即可;

全部替换完成后,将startup.bat,shutdown.bat,version.bat文件名重命名为startup2.bat,shutdown2.bat,version2.bat(方便后续测试)

3.配置环境变量

和平时配置Tomcat环境变量方法相同,在系统变量里新建一个CATALINA2_HOME的变量,值为我们Tomcat9.0.x的根目录,然后在Path新增一个值为%CATALINA2_HOME%\bin的变量即可;

CATALINA2_HOME

在这里插入图片描述

Path

在这里插入图片描述
如果需要将Tomcat注册成Windows服务,请参考我的另一篇博客将Tomcat注册为系统服务教程(WIN10)

测试配置

版本查看

打开CMD窗口输入,分别输入versionversion2(修改后的Tomcat9.0.x的版本脚本),显示如下;
在这里插入图片描述

启动服务

输入startup启动tomcat8.5.x

新打开一个CMD窗口,输入startup2启动tomcat9.0.x
在这里插入图片描述

浏览器访问测试

分别访问http://localhost:8080和http://localhost:8099,端口应和自己配置的一致

成功结果:
在这里插入图片描述

总结

到此,双Tomcat并存就已经完成了,网上很多博客只用修改了部分脚本文件,也能成功,这里最关键的几个文件有catalina.bat,startup.bat,shutdown.bat,server.xml,service.bat(如果需要注册服务的话),文章介绍的所有脚本文件都修改是为了保险以及使用方便,比如说version.bat文件,是用来查看当前版本的,如果不修改里的CATALINA_HOME,那么当查看版本的时候,还是会显示8.5.x版本,关乎路径问题,还是完善修改比较妥当;
配置三个,四个或者N个Tomcat理论上步骤一样,无非是将文中的2,数字继续往上加即可;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151798.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 全源最短路径问题采用Floyd算法进行求解_floyd算法求最短路径是贪心吗

    全源最短路径问题采用Floyd算法进行求解_floyd算法求最短路径是贪心吗前言在图论中,在寻路最短路径中除了Dijkstra算法以外,还有Floyd算法也是非常经典,然而两种算法还是有区别的,Floyd主要计算多源最短路径。在单源正权值最短路径,我们会用Dijkstra算法来求最短路径,并且算法的思想很简单—贪心算法:每次确定最短路径的一个点然后维护(更新)这个点周围点的距离加入预选队列,等待下一次的抛出确定。虽然思想很简单,实现起来是非常复杂的,我们需要邻接矩阵(表)储存长度,需要优先队列(或者每次都比较)维护一个预选点的集合。还要用一个boolean数组标记是否已经确定、

    2025年8月12日
    3
  • Python3.7模块之hashlib

    Python3.7模块之hashlibupdate()不支持将字符串对象引入,因为哈希在字节上工作,而不在字符上工作。所以update后面的括号里只能是字节(bytes)形式importhashlibmd=hashlib.md5()md.update(“你好”)md=md.hexdigest()print(md)出现以下错误:D:\PycharmProjects\untitled\venv\Scripts\pyt…

    2022年6月8日
    37
  • 三分钟实现微信小程序轮播图「建议收藏」

    三分钟实现微信小程序轮播图「建议收藏」生命不息,代码不止.在Android的项目完成后,接下来的半个月,要完成一款配套的微信小程序.那就开始动手呗.小程序的轮播图可比Android的简单多了,官方直接给出了这个组件,让我们看一看如何快速实现微信小程序的轮播图呢1.index.wxml&lt;!–index.wxml–&gt;&lt;swiperclass="swiper"indicator-dots="true…

    2022年5月21日
    42
  • 深入理解MySQL索引原理和实现——为什么索引可以加速查询?

    深入理解MySQL索引原理和实现——为什么索引可以加速查询?说到索引,很多人都知道“索引是一个排序的列表,在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址,在数据十分庞大的时候,索引可以大大加快查询的速度,这是因为使用索引后可以不用扫描全表来定位某行的数据,而是先通过索引表找到该行数据对应的物理地址然后访问相应的数据。”但是索引是怎么实现的呢?因为索引并不是关系模型的组成部分,因此不同的DBMS有不同的实现,我们针对MySQL数据库的实现进…

    2022年6月24日
    41
  • maven环境配置

    maven环境配置maven环境配置maven是一个项目管理插件,一般开发中会使用很多jar包,使用maven不用你手动去下载jar包,所有jar包仓库统一管理,只要配置一下pom文件即可。这可以提高开发效率,可以方便管理项目。1.下载maven可以访问官方网址:http://maven.apache.org/download.cgi这里可以根据情况选择自己需要下载的ma

    2022年5月14日
    46
  • (1)JMeter元件详解之ForEach Controller 逻辑控制器

    (1)JMeter元件详解之ForEach Controller 逻辑控制器

    2021年7月13日
    84

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号