Tomcat 9+ 版本默认主页迁移至 webapps.dist

文章目录

在 Apache Tomcat 9.0.x 版本中,默认的主页和示例应用从 webapps 目录移动到了 webapps.dist 目录。这一变化从 Tomcat 9.0.0.M4 (Milestone 4) 开始引入,并在后续版本中保持。

官方说明

根据 Apache Tomcat 官方文档和发布说明:

  • 在 Tomcat 9.0.0.M4 的 Release Notes 中提到: "The default web applications (ROOT, examples, docs, etc.) are now packaged in the webapps.dist directory. To install them, users must manually copy them to the webapps directory."

修改的意义或目的

  1. 安全性增强
    • 默认不部署示例应用(如 examplesdocs)可以减少潜在的安全风险,因为这些应用可能包含已知漏洞或暴露不必要的功能。
    • 用户需要显式启用这些应用,避免在生产环境中误用。
  2. 最小化默认部署
    • Tomcat 更倾向于提供一个"干净"的启动环境,避免不必要的资源占用。
    • 用户可以根据需求选择性部署示例或文档。
  3. 容器化友好
    • 在 Docker 或云原生环境中,轻量化的默认配置更符合最佳实践,用户可以通过卷挂载或构建镜像时自行决定是否包含示例应用。

如何恢复默认主页?

如果希望启用默认的主页(ROOT)和示例应用,需手动将 webapps.dist 中的内容复制到 webapps 目录:

bash 复制代码
cp -r webapps.dist/* webapps/

然后重启 Tomcat 即可访问 http://localhost:8080 的主页。

总结

  • 版本影响:Tomcat 9.0.0.M4 及后续版本(包括 Tomcat 10.x)。
  • 目的:提高安全性、减少默认部署、适应现代化部署场景。
  • 官方依据 :Tomcat 9.0 的 Changelog邮件列表讨论

这一变更是 Tomcat 项目对安全性和灵活性的权衡,符合当前服务器软件的简化趋势。

相关推荐
better_liang6 小时前
每日Java面试场景题知识点之-消息队列MQ核心场景与实战
java·面试·kafka·消息队列·rabbitmq·rocketmq·mq
小江的记录本6 小时前
【JVM虚拟机】垃圾回收GC:四种引用类型:强引用、软引用、弱引用、虚引用(附《思维导图》+《面试高频考点清单》)
java·jvm·spring boot·后端·python·spring·面试
小马爱打代码6 小时前
Spring源码 第四篇:Spring 5 源码深度拆解:AOP 全流程核心原理
java·后端·spring
better_liang6 小时前
每日Java面试场景题知识点之-SpringBoot启动流程
java·面试·springboot·源码解析·启动流程
RyFit7 小时前
Java + AI 实战:Spring AI 从入门到企业级落地
java·人工智能·spring
ZhengEnCi8 小时前
01-如何监听接口调用情况?
java·spring boot·后端
JAVA面经实录9179 小时前
MyBatis学习体系
java·mybatis
java1234_小锋9 小时前
在 Spring AI 中如何实现函数调用(Function Calling)?请说明其基本原理和应用场景。
java·人工智能·spring
小马爱打代码9 小时前
Spring源码 第九篇:Spring 5 源码深度拆解 - Spring 事件驱动模型
java·后端·spring
ForgeAI码匠10 小时前
ForgeAdmin|Spring Boot 3 后台框架的自动配置设计:少写配置,多做组合
java·spring boot·后端