当前位置: 首页 > news >正文

【Linux】Tomcat基本配置

本文详细介绍如何在轻量服务器上,使用华为云镜像站快速下载和配置Tomcat 8,并配置systemd服务管理。

环境准备

系统要求

  • 操作系统:CentOS 7/8 或 Ubuntu 18.04+
  • 内存:至少1GB
  • 磁盘空间:至少2GB可用空间

软件要求

  • JDK 1.8+(Tomcat 8要求)

完整安装步骤

1. 安装 JDK 1.8

# CentOS/RHEL
sudo yum install -y java-1.8.0-openjdk-devel# Ubuntu/Debian  
sudo apt update
sudo apt install -y openjdk-8-jdk

验证安装:

java -version
# 应该显示:java version "1.8.0_xxx"

2. 从华为云镜像站下载 Tomcat 8

# 进入安装目录
cd /opt# 从华为云镜像站下载 Tomcat 8
sudo wget https://mirrors.huaweicloud.com/apache/tomcat/tomcat-8/v8.5.96/bin/apache-tomcat-8.5.96.tar.gz# 如果版本不可用,查看最新版本
sudo wget -q -O - https://mirrors.huaweicloud.com/apache/tomcat/tomcat-8/ | grep -o 'v8\.5\.[0-9]*/' | sort -V | tail -1

3. 解压和配置

# 解压 Tomcat
sudo tar -xzf apache-tomcat-8.5.96.tar.gz# 重命名并移动到目标目录
sudo mv apache-tomcat-8.5.96 tomcat8# 删除压缩包
sudo rm -f apache-tomcat-*.tar.gz

4. 创建专用用户和设置权限

# 创建系统用户
sudo useradd -r -m -U -d /opt/tomcat8 -s /bin/false tomcat# 设置目录所有权
sudo chown -R tomcat:tomcat /opt/tomcat8# 给执行脚本添加权限(关键步骤!)
sudo chmod +x /opt/tomcat8/bin/*.sh# 创建必要的目录
sudo mkdir -p /opt/tomcat8/temp
sudo mkdir -p /opt/tomcat8/logs
sudo chown tomcat:tomcat /opt/tomcat8/temp
sudo chown tomcat:tomcat /opt/tomcat8/logs

5. 配置 Systemd 服务

创建服务文件:

sudo nano /etc/systemd/system/tomcat.service

使用以下配置:

[Unit]
Description=Apache Tomcat Web Application Container
After=network.target[Service]
Type=simple
User=tomcat
Group=tomcat
Environment=CATALINA_HOME=/opt/tomcat8
Environment=CATALINA_BASE=/opt/tomcat8
ExecStart=/opt/tomcat8/bin/catalina.sh run
ExecStop=/opt/tomcat8/bin/catalina.sh stop
Restart=always[Install]
WantedBy=multi-user.target

重要注意事项

1. 权限问题排查

如果启动失败,检查以下权限:

# 检查脚本执行权限
ls -la /opt/tomcat8/bin/*.sh
# 应该显示:-rwxr-xr-x# 检查目录权限
ls -la /opt/tomcat8/
# tomcat用户应该拥有所有文件

2. 环境变量配置(可选但推荐)

创建环境变量文件:

sudo nano /opt/tomcat8/bin/setenv.sh

添加:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export CATALINA_PID=/opt/tomcat8/temp/tomcat.pid

设置权限:

sudo chmod +x /opt/tomcat8/bin/setenv.sh
sudo chown tomcat:tomcat /opt/tomcat8/bin/setenv.sh

3. 激活并测试服务

# 重新加载systemd配置
sudo systemctl daemon-reload# 启动Tomcat服务
sudo systemctl start tomcat# 设置开机自启
sudo systemctl enable tomcat# 检查服务状态
sudo systemctl status tomcat

4. 防火墙配置

# CentOS 7
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload# CentOS 8
sudo firewall-cmd --add-port=8080/tcp --permanent
sudo firewall-cmd --reload# Ubuntu
sudo ufw allow 8080/tcp
sudo ufw reload

验证安装

1. 检查服务状态

sudo systemctl status tomcat
# 应该显示:Active: active (running)

2. 检查端口监听

netstat -tlnp | grep 8080
# 或者使用:
ss -tlnp | grep 8080

3. 访问测试

在浏览器中访问:

http://你的服务器IP:8080

应该看到Tomcat 8的欢迎页面。

故障排除

常见问题1:启动失败 status=203/EXEC

# 解决方案:修复脚本权限
sudo chmod +x /opt/tomcat8/bin/*.sh
sudo systemctl daemon-reload
sudo systemctl restart tomcat

常见问题2:权限被拒绝

# 解决方案:重新设置所有权
sudo chown -R tomcat:tomcat /opt/tomcat8

常见问题3:端口被占用

# 检查端口占用
netstat -tlnp | grep 8080
# 杀死占用进程或修改Tomcat端口
sudo nano /opt/tomcat8/conf/server.xml

查看日志

# 查看Tomcat日志
sudo tail -f /opt/tomcat8/logs/catalina.out# 查看systemd日志
sudo journalctl -u tomcat.service -f

管理命令

# 启动服务
sudo systemctl start tomcat# 停止服务  
sudo systemctl stop tomcat# 重启服务
sudo systemctl restart tomcat# 查看状态
sudo systemctl status tomcat# 查看日志
sudo journalctl -u tomcat.service -n 50

项目部署

将WAR文件部署到Tomcat:

# 复制WAR文件到webapps目录
sudo cp your-app.war /opt/tomcat8/webapps/# 设置权限
sudo chown tomcat:tomcat /opt/tomcat8/webapps/your-app.war# 重启Tomcat
sudo systemctl restart tomcat

tomcat编码问题

https://blog.csdn.net/m0_69750058/article/details/133006199

http://www.dtcms.com/a/528537.html

相关文章:

  • 网站建设的系统分析有哪些好的建站平台
  • 【大模型推理】ScheduleBatch 学习
  • 【经典书籍】C++ Primer 第19章特殊工具与技术精华讲解
  • JAVA面试汇总(二)多线程(五)
  • 怎样设计网站模板网站 建设初步
  • 网站建设所需的硬件设备网站运营工作是干什么的
  • 网站中的表格wordpress后台404
  • 从零开始:C++ 多进程 TCP 服务器实战(续篇)
  • 阮一峰《TypeScript 教程》学习笔记——装饰器
  • 一、基础预训练模型与能力
  • 上海网站建设选缘魁-企查公司简介模板文案
  • 重磅新书 | 《链改2.0:从数字资产到RWA》
  • 【IOS开发】SwiftUI + OpenCV实现图片的简单处理(一)
  • 【Docker】docker run
  • 成都网站建设 Vr便民网
  • LLama3架构原理浅浅学学
  • docker存储管理
  • Transformer架构发展历史
  • 【AI原生架构:数据架构】9、从打破数据孤岛到价值升维,企业数据资产变现全流程
  • Kubernetes 上的 GitLab + ArgoCD 实践(二):使用自建 GitLab Runner 完善 CI 流程
  • 网站如何查看浏览量2008建设网站
  • 开学季技术指南:高效知识梳理与实战经验分享
  • 网站推广计划渠道国外做美食视频网站有哪些
  • 金蝶K3老单 工艺路线维护特殊字符(使用模块返回值的方法)
  • 信贷控制范围
  • 乐陵网站优化最简单的网站设计
  • 项目信息和生产安全管理指南(试行)
  • 【Tesla】ICCV 2025技术分享
  • 企业做网站营销企业网站 响应式
  • 深度学习C++中的数据结构:栈和队列