将Web应用部署到Tomcat根目录的三种方法

将应用部署到Tomcat根目录的三种方法

将应用部署到Tomcat根目录的目的是可以通过"http://[ip]:[port]"直接访问应用,而不是使用"http://[ip]:[port]/[appName]"上下文路径进行访问。

方法一:(最简单直接的方法)

删除原 webapps/ROOT 目录下的所有文件,将应用下的所有文件和文件夹复制到ROOT文件夹下。

方法二:

删除原webapps/ROOT 目录下的所有文件,修改文件conf/server.xml,在Host节点下增加如下Context的内容配置:

xml 复制代码
<Host name="localhost"  appBase="webapps" 
      unpackWARs="true" autoDeploy="true"
    xmlValidation="false" xmlNamespaceAware="false">
    ......
    <Context path="" docBase="/data/myapps/bertram" reloadable="false" />
</Host>

注意:

1)path 的值设置为空;

2)应用不要放到tomcat的webapps目录下(如上述配置是放到自定义的文件夹myapps内的),否则访问时路径会有问题;

3)docBase指定到绝对路径。

如配置此设置后重启tomcat,如果docBase指向的是war文件,则会自动将war解压到 webapps/ROOT 目录;如果docBase指向的是应用已解压好的目录,如 docBase="/data/myapps/bertram",则tomcat不会生成 webapps/ROOT 目录(这种情况下,这样就可以不用删除 webapps/ROOT 目录,但 webapps/ROOT 目录内的内容是无法访问的),访问时将直接使用docBase指定的目录。

方法三:

与方法二类似,但不是修改全局配置文件conf/server.xml,而是在conf/Catalina/localhost目录下增加新的文件ROOT.xml(注意大小写),文件内容如下:

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<Context path="" docBase="/data/myapps/bertram" reloadable="true">
</Context>
相关推荐
用户059540174463 分钟前
Redis持久化踩坑实录:这个数据丢失Bug让我排查了6小时
前端·css
用户2136610035725 分钟前
VueRouter进阶-动态路由与嵌套路由
前端·vue.js
梯度不陡7 分钟前
Signal #17:Agent 开始进入组织系统
前端·javascript
何智超10 分钟前
AI 微前端性能优化之旅(上):复盘
前端·vibecoding
许我半盏清茶12 分钟前
前端路由:理解 hash 路由和 history 路由原理
前端·react.js
胡萝卜术18 分钟前
从暴力到Z字形消元:力扣240「搜索二维矩阵II」的降维打击之路
前端·javascript·面试
比老马还六22 分钟前
Bipes-Blockly项目二次开发/Coze智能体(十)
前端·嵌入式
25 分钟前
Vue 3 组件封装与使用:保姆级教程
前端
星辰28 分钟前
深入浅出 Android AOA 协议:通信流程与设备切换附着机制解析
前端
恋猫de小郭1 小时前
Amper 正式转正 Kotlin Toolchain ,Gradle 未来何去何从
android·前端·flutter