在CentOS系统中部署WAR包是Java Web应用常见的部署方式,本文将详细介绍从环境准备到最终部署的完整流程,确保操作清晰、结构规范。

环境准备
在安装WAR包前,需确保系统已满足运行Java Web应用的基础环境:
Java运行环境:Tomcat依赖JDK,需安装JDK 8或更高版本,可通过以下命令安装OpenJDK:
sudo yum install java-1.8.0-openjdk-devel -y
安装后验证Java版本:
java -version
Tomcat服务器:下载Tomcat压缩包(如apache-tomcat-9.0.x.tar.gz),解压至指定目录(如/usr/local/tomcat):
sudo tar -zxvf apache-tomcat-9.0.x.tar.gz -C /usr/local/ sudo mv /usr/local/apache-tomcat-9.0.x /usr/local/tomcat
设置Tomcat目录权限:
sudo chown -R tomcat:tomcat /usr/local/tomcat
WAR包部署方式
WAR包可通过以下两种方式部署到Tomcat:
直接部署到webapps目录
Tomcat的webapps目录会自动部署其中的WAR包:

- 将WAR包上传至
/usr/local/tomcat/webapps/目录:sudo cp your-app.war /usr/local/tomcat/webapps/
- 启动Tomcat,WAR包将自动解压并部署:
/usr/local/tomcat/bin/startup.sh
- 访问应用:
http://服务器IP:8080/your-app
通过server.xml配置虚拟目录
若需自定义部署路径,可通过修改server.xml实现:
- 编辑
/usr/local/tomcat/conf/server.xml,在<Host>标签内添加:<Context docBase="/path/to/your-app.war" path="/custom-path" reloadable="true"/>
其中
docBase为WAR包绝对路径,path为访问路径。 - 重启Tomcat生效:
/usr/local/tomcat/bin/shutdown.sh /usr/local/tomcat/bin/startup.sh
常见问题排查
部署后若出现访问异常,可通过以下步骤排查:
检查端口占用:
netstat -tuln | grep 8080
若端口被占用,修改
server.xml中的Connector端口配置。查看日志文件:
- Tomcat启动日志:
/usr/local/tomcat/logs/catalina.out - 应用错误日志:
/usr/local/tomcat/logs/your-app.log
- Tomcat启动日志:
权限问题:
确保Tomcat用户对WAR包及解压目录有读写权限:
sudo chown -R tomcat:tomcat /usr/local/tomcat/webapps/your-app
防火墙与SELinux配置
确保外部可访问Tomcat服务:
- 开放8080端口:
sudo firewall-cmd --permanent --add-port=8080/tcp sudo firewall-cmd --reload
- 关闭SELinux(临时):
sudo setenforce 0
或配置SELinux策略允许Tomcat访问(需专业指导)。
FAQs
Q1: 部署WAR包后访问404错误如何解决?
A: 首先检查WAR包是否正确解压至webapps目录,确认访问路径与WAR包名称一致,若通过server.xml配置,需验证Context标签的path和docBase参数是否正确,并重启Tomcat。
Q2: 如何更新已部署的WAR包?
A: 直接替换webapps目录下的WAR包文件,Tomcat会自动重新部署,若应用正在运行,建议先执行/usr/local/tomcat/bin/shutdown.sh停止服务,替换后再启动,对于生产环境,建议通过CI/CD工具实现自动化部署。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复