一个tomcat下如何部署多个项目?

news/2024/7/12 3:54:56 标签: tomcat, 网络协议, https, http, 性能测试, 安全性测试

1、不修改端口,部署多个项目

清楚tomcat目录结构的应该都知道,项目包是放在webapps目录下的,那能否在同一个tomcat的webapps目录下运行多个不同项目呢?
答案是可以的。

1、将多个项目包放入webapps文件夹下

https>https://img-blog.csdnimg.cn/2709a447483c455aa19dea28c0169bb9.png" width="692" />

2、修改conf下的server.xml文件,新增web应用节点

定位到server.xml文件结束标签之前,新增web应用节点,一个节点代表一个项目

图片https>https://img-blog.csdnimg.cn/img_convert/b8ab4dbd400854b1cded2c43d2e0ecac.png" width="693" />

如果你想学习自动化测试,我这边给你推荐一套视频,这个视频可以说是B站播放全网第一的自动化测试教程,同时在线人数到达1000人,并且还有笔记可以领取及各路大神技术交流:798478386    

【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)_哔哩哔哩_bilibili【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)共计200条视频,包括:1、接口自动化之为什么要做接口自动化、2、接口自动化之request全局观、3、接口自动化之接口实战等,UP主更多精彩视频,请关注UP账号。https>https://csdnimg.cn/release/blog_editor_html/release2.3.6/ckeditor/plugins/CsdnLink/icons/icon-default.png?t=N7T8" alt="icon-default.png?t=N7T8" />https>https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337

图片https>https://img-blog.csdnimg.cn/img_convert/fd5e80a43700524c2fb6897ed8c7d4ca.png" width="651" />

以上新增内容说明:

docBase属性: 指定Web应用的文件路径,可以是绝对路径,也可以给定相对路径
path属性: 指定访问该Web应用的URL入口。

reloadable属性: 若这个属性为true,tomcat服务器在运行状态下会监视WEB-INF/classes和WEB-INF/lib目录下class文件的改动,如果监测到class文件被更新,服务器会自动重新加载Web应用。 

注意:每个项目本身的一些配置文件修改,例如数据库连接信息配置,请自行配置好,这里不做赘述。另外,以上第2步server.xml中新增节点不是必须的,可以直接进入第3步,也ok。

3、重启tomcat,浏览器输入访问项目地址

注意:以开发提供的项目部署文档说明中地址为准,去进行访问测试;

浏览器访问第一个项目地址ip:8080/ningmengban/app/register/regiseter.html,成功。

https>https://img-blog.csdnimg.cn/a39a81828a40492ca6d862034fb6fe03.png" width="956" />

浏览器访问第二个项目地址ip:8080/erp/regist,成功。

图片https>https://img-blog.csdnimg.cn/img_convert/4c79f191c9923fa36ca90d59c79c4856.png" width="692" />

2、修改端口,部署多个项目

我们已经清楚一个webapps下面可多个项目。另外一种思路则是,可否多个webapps,每个webapps下面运行一个项目?

答案也是可以的。 

1、tomcat目下复制webapps目录,并重命名为webapps1

图片https>https://img-blog.csdnimg.cn/img_convert/33c738a3a5dc5b9a166d2c513d9c9bb4.jpeg" width="693" />

Tomcat下webapps已经部署了一个项目,复制webapps重命名为webapps1,并在该文件夹下删除第一个项目,放第二个项目

图片https>https://img-blog.csdnimg.cn/img_convert/7ab8dd921bf82c73573a0693fbedfd97.png" width="692" />

2、修改tomcat的conf目下的server.xml文件,设置端口等信息

1)server.xml已有第一个项目的配置信息,现在需要新增第二个项目的配置,在Server节点下,新增Service节点;第2个Service节点复制第1个Service内容

图片https>https://img-blog.csdnimg.cn/img_convert/f3ee0b3f7ab75fdb6f198e737e92810c.png" width="692" />

2)复制后,做如下端口等配置修改

图片https>https://img-blog.csdnimg.cn/img_convert/2538e9c802a1f8ac159c136999cc012a.png" width="677" />

以上修改信息说明:

Service的name属性修改为Catelina1;

http协议访问的Connector port属性修改为8081;
AJP协议访问的Connector port属性修改为8010;
Engine的name属性修改为Catelina1;
Host的appBase属性修改为webapps1;

3、重启tomcat,浏览器输入访问项目地址

浏览器访问第一个项目地址ip:8080/ningmengban/app/register/regiseter.html,成功。

https>https://img-blog.csdnimg.cn/da59911ea39b4e1e936555ba2924b0c3.png" width="960" />

 浏览器访问第二个项目地址ip:8081/erp/regist,成功。

图片https>https://img-blog.csdnimg.cn/img_convert/f7ec49f46660a968a8d4d49d81fa4770.png" width="692" />


http://www.niftyadmin.cn/n/5073246.html

相关文章

vue3+elementPlus ElMessageBox消息框取消按钮位置调整

要求所有的ElMessageBox消息弹出框的取消按钮放在右边&#xff0c;如图 代码如下 <script lang"ts" setup> import { ElMessageBox } from element-plus const btnHandle () >{ElMessageBox.confirm(确定要删除该人员吗&#xff1f;,提示,{cancelButtonCl…

vscode package.json文件开头的{总是提升警告

警告如下 Problems loading reference https://json.schemastore.org/stylelintrc.json: Unable to load schema from https://json.schemastore.org/stylelintrc.json: read ECONNRESET. 解决如下 在设置&#xff08;settings.json&#xff09;里 新增一条属性 "ht…

【C++设计模式之命令模式:行为型】分析及示例

简介 命令模式是一种行为型设计模式&#xff0c;它将请求封装成一个对象&#xff0c;从而使不同的请求可以被参数化、队列化或记录化。这种模式允许请求的发送者和接收者进行解耦&#xff0c;同时提供更高的灵活性和可扩展性。 描述 命令模式的核心思想是通过命令对象来封装…

计算机网络(第8版)-第3章 数据链路层

数据链路层使用的信道主要有以下两种类型&#xff1a; &#xff08;1&#xff09;点对点信道。这种信道使用一对一的点对点通信方式。 &#xff08;2&#xff09;广播信道。这种信道使用一对多的广播通信方式&#xff0c;因此过程比较复杂。广播信道上连接的主机很多&#xf…

轻松实现时间录入自由!如何在Microsoft Word中轻松插入格式化的日期和时间

在文档中插入当前日期和时间有几个原因。你可能希望将其插入信函或页眉或页脚中。无论是什么原因&#xff0c;Word都可以轻松地将日期和时间插入文档。 如果希望在打开或打印文档时自动更新日期和时间&#xff0c;可以将其作为自动更新的字段插入。该字段也可以随时手动更新。…

PL/SQL拉链表

练习:-- 拉链表练习: 维度表源表 ID M_NAME REST UP_DATE 1 车贷 0.01 2022/12/1 2 房贷 0.03 2022/12/1 3 经营贷 0.015 2022/12/1 维度表拉链表 ID M_NAME REST BEGIN_DATE END_DATE 1 车贷 …

2023/10/7 -- ARM

【程序状态寄存器读写指令】 1.指令码以及格式 mrs:读取CPSR寄存器的值 mrs 目标寄存器 CPSR&#xff1a;读取CPSR的数值保存到目标寄存器中msr:修改CPSR寄存器的数值msr CPSR,第一操作数:将第一操作数的数值保存到CPSR寄存器中//修改CPSR寄存器&#xff0c;也就表示程序的状…

QT:工业软件开发的首选“

QT&#xff1a;工业软件开发的首选&#xff0c;强大的GUI框架与多功能扩展" 在工业软件开发领域&#xff0c;主要从事自动化、机械自动化和电气自动化的人员通常使用C或C作为主要编程语言。然而&#xff0c;在当今互联网发展的背景下&#xff0c;Qt成为了C中唯一可靠的G…