它不仅支持运行 Java Servlet 和 JavaServerPages (JSP),还提供了对 WebSocket 技术的全面支持,成为众多 Java Web 应用的首选部署平台
本文将详细阐述如何在 Linux 系统上高效、安全地安装并配置 Tomcat,同时分享一些最佳实践,确保您的 Tomcat 环境既稳定又高效
一、准备工作 1. 选择合适的 Linux 发行版 虽然 Tomcat 几乎可以在所有主流 Linux 发行版上运行,但不同的发行版在安装步骤和依赖管理上略有差异
常见的选择包括 Ubuntu/Debian 系列和 CentOS/RHEL 系列
本文将以 Ubuntu 20.04 LTS 和 CentOS 8 为例进行说明
2. 安装 Java JDK Tomcat 是基于 Java 的应用服务器,因此在安装 Tomcat 之前,必须确保系统上已经安装了合适的 Java Development Kit(JDK)
通常,推荐使用 Oracle JDK 或 OpenJDK
Ubuntu: bash sudo apt update sudo apt install openjdk-11-jdk CentOS: bash sudo yum install java-11-openjdk-devel 安装完成后,可以通过`java -version` 命令验证 Java 是否正确安装
二、下载 Tomcat 访问 【Apache Tomcat 官方下载页面】(https://tomcat.apache.org/download-90.cgi),根据需求选择合适的 Tomcat 版本(建议使用最新的稳定版)
下载适用于 Linux 的二进制发行包(tar.gz 格式)
三、安装 Tomcat 1. Ubuntu - 创建安装目录(可选,但推荐将软件安装在专门目录下): bash sudo mkdir -p /opt/tomcat 下载并解压 Tomcat: bash cd /opt/tomcat wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.XX/bin/apache-tomcat-9.0.XX.tar.gz sudo tar -xzvf apache-tomcat-9.0.XX.tar.gz sudo rm apache-tomcat-9.0.XX.tar.gz 设置环境变量(可选,方便管理): 编辑`/etc/profile` 或用户主目录下的 `.bashrc` 文件,添加如下行: bash export CATALINA_HOME=/opt/tomcat/apache-tomcat-9.0.XX export PATH=$CATALINA_HOME/bin:$PATH 然后执行 `source /etc/profile`或 `source ~/.bashrc` 使改动生效
2. CentOS 步骤与 Ubuntu 类似,只是使用`yum` 或`dnf`替代 `apt`: 创建安装目录: bash sudo mkdir -p /opt/tomcat 下载并解压 Tomcat: bash cd /opt/tomcat wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.XX/bin/apache-tomcat-9.0.XX.tar.gz sudo tar -xzvf apache-tomcat-9.0.XX.tar.gz sudo rm apache-tomcat-9.0.XX.tar.gz 设置环境变量(同上)
四、配置 Tomcat 1. 修改 server.xml `server.xml` 位于`$CATALINA_HOME/conf`目录下,是 Tomcat 的主要配置文件
您可以根据需求调整端口号、连接器设置等
例如,将默认的 HTTP 端口从 8080 改为 80:
2. 配置用户权限
在 `$CATALINA_HOME/conf/tomcat-users.xml` 文件中添加用户和管理角色,以便通过 Tomcat 管理界面进行监控和管理:
五、启动与停止 Tomcat
1. 启动 Tomcat
sudo $CATALINA_HOME/bin/startup.sh
2. 检查启动状态
可以通过查看日志文件(如 `catalina.out`)或使用`ps` 命令确认 Tomcat 是否成功启动
3. 访问管理界面
在浏览器中访问 `http://your_server_ip:8080`(如果未更改端口),应能看到 Tomcat 的欢迎页面 管理界面可通过 `http://your_server_ip:8080/manager/html` 和`http://your_server_ip:8080/host-manager/html` 访问(需登录)
4. 停止 Tomcat
sudo $CATALINA_HOME/bin/shutdown.sh
六、最佳实践
1. 使用 Systemd 管理服务
为便于管理,可以将 Tomcat 配置为 Systemd 服务 创建一个服务单元文件,如`/etc/systemd/system/tomcat.service`,内容如下:
【Unit】
Description=Apache Tomcat Web Application Container
After=network.target
【Service】
Type=forking
Environment=CATALINA_PID=/opt/tomcat/apache-tomcat-9.0.XX/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat/apache-tomcat-9.0.XX
Environment=CATALINA_BASE=/opt/tomcat/apache-tomcat-9.0.XX
Environment=CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC
Environment=CATALINA_OUTDIR=/opt/tomcat/apache-tomcat-9.0.XX/logs
ExecStart=/opt/tomcat/apache-tomcat-9.0.XX/bin/startup.sh
ExecStop=/opt/tomcat/apache-tomcat-9.0.XX/bin/shutdown.sh
User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always
【Install】
WantedBy=multi-user.target
然后重新加载 Systemd 配置并启用服务:
sudo systemctl daemon-reload
sudo systemctl enable tomcat
sudo systemctl start tomcat
2. 安全加固
禁用不必要的连接器和端口
定期更新 Tomcat 和 JDK
使用强密码和定期更换
配置防火墙规则限制访问
监控日志,及时发现并响应异常
3. 性能调优
根据应用需求调整 JVM 参数(如堆大小、垃圾回收器),以及 Tomcat 的连接器设置(如线程池大小、连接超时时间)等,以达到最佳性能
七、总结
在 Linux 上安装和配置 Tomcat 是一个相对简单但至关重要的过程,直接关系到 Java Web 应用的稳定性和性能 通过遵循本文提供的详细步骤和最佳实践,您可以轻松搭建起一个高效、安全的 Tomcat 环境 无论是对于初学者还是经验丰富的开发者,理解 Tomcat 的安装与配置都是掌握 Java Web 开发运维不可或缺的一部分 希望本文能成为您成功部署 Tomcat 的得力助手