Linux研学-Tomcat安装
一 概述
Tomcat 是 Apache 开发的开源 Servlet 容器,支持 Java Servlet 和 JSP 规范,提供轻量级 Web 服务功能,可托管动态 Java Web 应用(如 JSP、Servlet)并处理 HTTP 请求。也就是让用户开发的WEB应用程序变成可访问的网页。
核心架构包含 Connector,Container(Engine/Host/Context/Wrapper)、Valve 等组件,支持静态资源访问、动态请求处理、安全认证、日志管理及虚拟主机配置。
相比 Nginx/Apache,Tomcat 专为 Java 生态设计,适用于开发测试、小型生产环境或微服务场景,通过部署 WAR 包或管理界面快速运行应用,是 Java Web 开发的标准容器之一
二 JDK安装
1 官网下载(需注册登录)
2 上传至Linux的root目录
3 创建文件夹
# 统一管理
mkdir -p /export/server
4 解压
# 解压到指定目录中
tar -zxvf jdk-8u451-linux-x64.tar.gz -C /export/server/
5 创建软连接
# /export/server/目录创建软连接 保留jdk版本号 多个jdk更改软连接指向即可切换版本
ln -s /export/server/jdk1.8.0_451/ /export/server/jdk
ls
jdk jdk1.8.0_451
6 配置环境变量
# 修改配置文件
vim /etc/profile# 修改后保存退出,令文件生效
source /etc/profile# 查看是否成功追加
echo $PATH
/usr/local/openssl/bin:/root/.local/bin:/root/bin:/usr/local/openssl/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/export/server/jdk/bin# 查看所执行的java程序来自哪里
which java
/export/server/jdk/bin/java
若执行其他版本的jdk 可观察PATH中是否存在其他jdk在所需版本的路径前面,可通过which搜索将目录中的jdk替换为自己的版本,或将所需jdk的路径在PATH中提前
# jdk安装目录
export JAVA_HOME=/export/server/jdk# 加入PATH 若有多版本jdk 只修改JAVA_HOME即可
export PATH=$PATH:$JAVA_HOME/bin
三 Tomcat安装
1 构建用户
使用非root用户进行创建,防止网站被黑,从而拿到root权限
# 创建用户
useradd tomcat
# 切换用户
su - tomcat
2 下载安装包
Tomcat会定期清理旧版本,因此需要去官网查看可用的版本下载链接,推荐Core 版本的 tar.gz
# 下载 或下载后上传至Linux
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.107/bin/apache-tomcat-9.0.107.tar.gz
3 解压到指定文件夹
# tomcat用户无权限解压至/export/server目录 因此切换用户
logout # 前往tomcat用户的家目录
cd /home/tomcat/# 解压文件到指定目录
tar -zxvf apache-tomcat-9.0.107.tar.gz -C /export/server/
4 创建软连接
# 切换tomcat用户
ln -s apache-tomcat-9.0.107 /export/server/tomcat
5 修改目录权限
# 递归修改文件/目录的所有者和所属组
chown -R tomcat:tomcat tomcat
chown -R tomcat:tomcat apache-tomcat-9.0.107# 查看权限
ls -l
drwxr-xr-x. 9 tomcat tomcat 4096 7月15日 22:52 apache-tomcat-9.0.107
lrwxrwxrwx. 1 root root 28 7月15日 15:28 jdk -> /export/server/jdk1.8.0_451/
drwxr-xr-x. 8 root root 4096 7月15日 15:25 jdk1.8.0_451
lrwxrwxrwx. 1 tomcat tomcat 21 7月15日 22:53 tomcat -> apache-tomcat-9.0.107
6 启动
# 切换tomcat用户
su - tomcat# 启动 输出为Tomcat started.表示启动成功
/export/server/tomcat/bin/startup.sh
7 检查端口 8080
# tomcat 端口默认绑定 8080
netstat -anp|grep 8080
tcp6 0 0 :::8080 :::* LISTEN 6145/java
8 内部访问
此时仅内部有权限访问,由于防火墙存在,外部请求无法访问
# 测试本地 Tomcat 服务是否正常运行 正常可输出页面信息
curl 127.0.0.1:8080
9 放行8080端口的外部访问权限
① 方式一:关闭防火墙
# 停止防火墙服务
systemctl stop firewalld# 禁用防火墙开机自启
systemctl disable firewalld
② 方式二:配置防火墙规则,放行端口
# 放行8080端口的TCP流量(--permanent表示永久规则)
sudo firewall-cmd --add-port=8080/tcp --permanent# 重新加载防火墙规则(使配置立即生效)
sudo firewall-cmd --reload
③ 验证端口是否放行
# 查看已放行的端口列表
firewall-cmd --list-ports# 或检查详细规则(应包含8080/tcp)
firewall-cmd --list-all