关于对 Tomcat 进行小版本升级的快速解决方案

1、背景描述

原来的 Tomcat 在部署时,使用的是最新的版本 9.0.40 。

经过一段时间后,在原来的 Tomcat 版本中,发现存在漏洞。

因此,需要将旧版本(9.0.40)升级到没有漏洞的新版本(9.0.93)。

2、查看Tomcat的版本信息

如上图所示,在 tomcat 的 bin 目录下打开 cmd 窗口,运行 version.bat 程序,即可查看 tomcat 当前的版本信息(本例的版本为 9.0.40 )。

注意:如果是在 Linux 操作系统中,运行的是 version.sh 程序。

3、下载新版本的Tomcat

官网下载地址:https://archive.apache.org/dist/tomcat/

如上图所示,因为旧版本是 tomcat-9 大版本中的,因此选择下载的新版本也最好是 tomcat-9 大版本中的。

如上图所示,选择下载日期最新的小版本。

如上图所示,bin 目录存放的是已编译的程序,src 目录存放的是需要编译的源代码;没有特殊需求,选择已编译的程序即可。

如上图所示,选择下载 zip 格式(更加通用)的 tomcat 安装包。

4、备份旧版本的核心目录

4.1、复制备份bin文件夹

如上图所示,创建一个文件夹,用来复制备份旧版本 tomcat 的 bin 文件夹的内容。

4.2、复制备份lib文件夹

如上图所示,在备份文件夹中,复制备份旧版本 tomcat 的 lib 文件夹的内容。

5、替换新版本的核心目录

5.1、覆盖替换bin文件夹

如上图所示,用新版本 tomcat 的 bin 文件夹,覆盖替换旧版本 tomcat 的 bin 文件夹。

注意:因为原 bin 文件夹可能存在一些自定义的配置文件(例如 setenv.bat 或 setenv.sh ),所以推荐使用覆盖替换的操作,而不是直接把旧目录删除、然后放新目录。

5.2、覆盖替换lib文件夹

如上图所示,用新版本 tomcat 的 lib 文件夹,覆盖替换旧版本 tomcat 的 lib 文件夹。

注意:因为原 lib 文件夹可能存在一些自定义的 jar 包文件,所以推荐使用覆盖替换的操作,而不是直接把旧目录删除、然后放新目录。

6、确认Tomcat的新版本信息

如上图所示,在 tomcat 的 bin 目录下打开 cmd 窗口,运行 version.bat 程序,即可确认 tomcat 升级后的版本信息(本例的版本为 9.0.93 )。

注意:如果是在 Linux 操作系统中,运行的是 version.sh 程序。

本文参考

【1】【samirL】【升级tomcat版本方式】【博客园】【2020-09-14】

【2】【蜗牛计划中】【如何查看tomcat的版本信息】【百度经验】【2018-05-12】