应用服务器Tomcat

启动两给tomcat

apache-tomcat-9.0.60\bin------>

启动tomcat startup.bat (Windows) / startup.sh(Linux)

关闭tomcat shutdown.bat(Windows)/shutdown.sh (Linux)

复制一个Tomcat为2,先启动第一个tomcat,后启动第二个tomcat会出错。

查看tomcat的logs的日志文件

可以看到出错的信息,端口号被占用,多个tomcat实例冲突

解决方法更改第二个tomcat------>conf------>server.xml

默认:<Server port="8005" shutdown="SHUTDOWN">

<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443" />

配置项 作用 默认值 可修改项
<Server port="8005"> Tomcat 关闭端口 8005 可改为其他端口(如 8006)
<Connector port="8080"> HTTP 请求端口 8080 可改为 8081

部署

把hello.war部署到两个tomcat中,

  1. 一个放在apache-tomcat-9.0.60\webapps

启动tomcat,把hello.war放到 webapps 自动解压

访问: http://localhost:8080/hello 解压名称

  1. 另一个apache-tomcat-9.0.60\webapps\root

删除root目录下类容,解压hello.war,把hello子目录复制到root目录下

访问:http://localhost:8080

1个tomcat可以部署多个应用,但默认应用只有一个放在ROOT

HTTP Status 404 -- Not Found 没有找到
500 服器异常
401 Unauthorized 未授权

特性 ROOT 应用 非 ROOT 应用
​访问方式 http://localhost:8080/(不带应用名) http://localhost:8080/应用名/(必须带应用名)
​存放位置 $CATALINA_HOME/webapps/ROOT $CATALINA_HOME/webapps/应用名
​适用场景 主站、官网、直接访问的应用 子系统、模块化部署(如后台、API)
​是否唯一 一个 Tomcat 只能有一个 ROOT 应用 可以有多个非 ROOT 应用
​部署方式 直接放在 webapps/ROOT 目录 放在 webapps/应用名 目录

tomcat 两种部署方式

第一种直接手动部署到 webapps 目录下,Tomcat 默认会自动解压 .war 文件并部署应用。

第二种Tomcat Manager 应用(Web 界面部署)​

直接访问 http://localhost:8080/manager/html ,根据提示复制类容conf/tomcat-users.xml,更改用户名密码

复制代码
<role rolename="manager-gui"/>
<user username="admin" password="123456" roles="manager-gui"/>

进入界面点击要要部署的war包文件,部署即可

相关推荐
AI你一生一世2 小时前
不止于时序存储:DolphinDB 如何成为 AI 时代的工业智能底座
java·人工智能·struts·时序数据库·工业智能·dolphindb·ai基础设施
云-缩影2 小时前
拆解 AI 图像生成应用的后端架构:ECS、OSS 和大模型 API 怎么配合
java·spring boot·后端
瑞克-桑切斯2 小时前
7、MySQL 慢查询排查与优化实战指南
java·服务器·数据库
海的透彻6 小时前
dockerfile如何快速构建容器(java服务)
java·开发语言
code2cat7 小时前
Java工具篇之Gradle:用任务图组织构建与交付
java·开发语言·单元测试·gradle
后台模板学习7 小时前
大模型 Prompt 工程在电商订单系统中的踩坑记录
java·python·prompt
w_zero_one7 小时前
算法--构造
java·数据结构·算法
SL_staff8 小时前
制造业订单交付崩盘?用四层协同框架重建交付可信度(技术实践)
java·产品·全栈
SL_staff8 小时前
打破风控迭代死循环:用决策编排重构业务与技术协作链路
java·产品·全栈
Mikko79 小时前
Redis 连接数满了服务端有错误信息吗?连接数不增加却命令超时?6.2 实测连接池、超时与大 key 怎么判定
java·spring boot·redis·后端