将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>
相关推荐
加号32 分钟前
【C#】VS2022 传统 ASP.NET Web 服务(.asmx)接口实现指南
前端·c#·asp.net
Rain5097 分钟前
2.3. 安全配置:环境变量与 API 密钥管理
前端·人工智能·后端·安全·ai·node.js·ai编程
用户938515635077 分钟前
HTML5 Canvas 从入门到AI驱动游戏开发:手把手教你用原生JS打造飞机游戏与数据可视化
前端·javascript·人工智能
William_Xu8 分钟前
var [a, b] = { a: 1, b: 2 } 解构赋值
前端
用户059540174469 分钟前
Playwright 网络拦截踩坑实录:我花了 3 小时才搞懂数据持久化验证的正确姿势
前端·css
weedsfly9 分钟前
React 开发中的闭包陷阱:四个真实场景,让你彻底理解闭包
前端·react.js
MariaH10 分钟前
Git Cherry Pick 常用操作
前端
初圣魔门首席弟子16 分钟前
AI Agent 核心原理:工具调用(Function Calling)完整工作流程详解
前端·数据库·人工智能
CodeSheep22 分钟前
又是梁文锋,有点猛啊。
前端·后端·程序员
陈老老老板33 分钟前
如何用 Bright Data Web Scraper API + Coze 搭建 Reddit 行业情报聚合 Bot(2026 实战指南)
前端·人工智能