一、Tomcat 基础功能

1. Tomcat 对应的 Java 版本

Tomcat 默认打开的是8080端口并且Tomcat 是 基于java的web应用服务器,要想使用 Tomcat 必须先安装java(jdk)。

Servlet Spec JSP Spec EL Spec WebSocket Spec Authentication Spec (JASPIC) Apache Tomcat Version Latest Released Version Supported Java Versions
6.1 4.0 6.0 2.2 3.1 11.0.x 11.0.0 17 and later
6.0 3.1 5.0 2.1 3.0 10.1.x 10.1.31 11 and later
4.0 2.3 3.0 1.1 1.1 9.0.x 9.0.96 8 and later

2. 安装 Tomcat

2.1 基于包安装 Tomcat

2.1.1 Rocky 9.4 包安装 Tomcat

[root@Rocky9.4 ~]#cat /etc/redhat-release
Rocky Linux release 9.4 (Blue Onyx)

[root@Rocky9.4 ~]#dnf list tomcat*
Last metadata expiration check: 3:16:30 ago on Fri 18 Oct 2024 09:34:25 AM CST.
Available Packages
tomcat.noarch                                                               1:9.0.87-1.el9_4.2                                               appstream
tomcat-admin-webapps.noarch                                                 1:9.0.87-1.el9_4.2                                               appstream
tomcat-docs-webapp.noarch                                                   1:9.0.87-1.el9_4.2                                               appstream
tomcat-el-3.0-api.noarch                                                    1:9.0.87-1.el9_4.2                                               appstream
tomcat-jsp-2.3-api.noarch                                                   1:9.0.87-1.el9_4.2                                               appstream
tomcat-lib.noarch                                                           1:9.0.87-1.el9_4.2                                               appstream
tomcat-native.x86_64                                                        1:1.2.36-1.el9                                                   epel
tomcat-servlet-4.0-api.noarch                                               1:9.0.87-1.el9_4.2                                               appstream
tomcat-webapps.noarch                                                       1:9.0.87-1.el9_4.2                                               appstream#

# 如果没有jdk会默认安装openjdk11
[root@Rocky9.4 ~]#dnf -y install tomcat tomcat-admin-webapps tomcat-webapps tomcat-docs-webapp
[root@Rocky9.4 ~]#systemctl enable --now tomcat
# 会自动创建 tomcat 用户来管理 Tomcat 服务
[root@Rocky9.4 ~]#getent passwd tomcat
tomcat:x:53:53:Apache Tomcat:/usr/share/tomcat:/sbin/nologin
[root@Rocky9.4 ~]# ss -tln

LISTEN     0          1              [::ffff:127.0.0.1]:8005                    *:*         users:(("java",pid=292828,fd=56))
LISTEN     0          100                             *:8080                    *:*         users:(("java",pid=292828,fd=46))

CentOS 7 已经在2024年7月停止维护了。如果用来做测试的话也是可以的,但是yum仓库源自带的Tomcat是7.0.76版本,不推荐,但是可以二进制安装。

2.1.2 Ubuntu 22.04 包安装 Tomcat

[root@ubuntu2204 ~]#apt list tomcat*
Listing... Done
tomcat-jakartaee-migration/jammy 0.2.0-1 all
tomcat9-admin/jammy-updates 9.0.58-1ubuntu0.1 all
tomcat9-common/jammy-updates 9.0.58-1ubuntu0.1 all
tomcat9-docs/jammy-updates 9.0.58-1ubuntu0.1 all
tomcat9-examples/jammy-updates 9.0.58-1ubuntu0.1 all
tomcat9-user/jammy-updates 9.0.58-1ubuntu0.1 all
tomcat9/jammy-updates 9.0.58-1ubuntu0.1 all
[root@ubuntu2204 ~]# apt -y install tomcat9 tomcat9-admin tomcat9-docs

2.2 二进制安装 Tomcat

目前主流的 Tomcat 是9.0.X 版本,目前最新的9系列是9.0.96。从 Apache 官网下载二进制 Tomcat 包进行安装,此为生产常用方式。

注意:安装 Tomcat 前必须先安装 JDK。

官方和镜像站点下载:

Apache Tomcat® - Apache Tomcat 9 Software Downloads

清除jsp生成的java和class文件

#源代码升级的时候,切记要删掉jsp这个目录下的缓存数据,否则页面显示的还是以前的内容
[root@rs2 tomcat]#tree /usr/local/tomcat/work/
/usr/local/tomcat/work/
└── Catalina
    └── localhost
        ├── docs
        ├── examples
        ├── host-manager
        ├── manager
        └── ROOT
            └── org
                └── apache
                    └── jsp
                        ├── index_jsp.class
                        ├── index_jsp.java
                        ├── test_jsp.class
                        └── test_jsp.java

11 directories, 4 files
[root@rs2 tomcat]# rm -rf /usr/local/tomcat/work/Catalina/localhost/ROOT/org/apache/jsp/*
Categories: 未分类

邢宇宇

我是一名热情的云原生架构师和Java开发者,专注于构建可扩展的大数据解决方案。我的职业旅程始于对代码的热爱和创新技术的追求。我拥有在云计算和大数据领域深厚的技术背景,这使我能够设计和实现高效、稳健的系统。 我擅长使用Java来开发高性能的应用程序,同时也深入研究了如何利用云服务来优化数据处理过程。我热衷于探索新技术,如容器化、微服务架构和自动化,这些都是当今构建和部署现代软件解决方案的关键元素。 在我的博客中,我分享我的专业知识和行业见解,探讨最佳实践,以及如何克服在云原生生态系统中遇到的挑战。我相信通过共享和协作,我们可以推动技术的发展,创造出更好的解决方案来解决复杂问题。欢迎加入我的技术之旅,与我一起深入云原生的世界!

0 Comments

发表回复

Avatar placeholder

您的电子邮箱地址不会被公开。 必填项已用*标注