一、环境准备
安装Java环境
JSP需要Java运行环境,首先安装OpenJDK 1.8(或更高版本):
sudo yum install -y java-1.8.0-openjdk-devel
验证安装是否成功:
java -version
输出应包含java version "1.8.0_xxx",表示JDK安装正确。
安装Tomcat
sudo yum install -y tomcat tomcat-admin-webapps tomcat-docs-webapp tomcat-webapps
安装完成后,Tomcat会自动启动,可通过systemctl status tomcat查看状态。/opt):wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.62/bin/apache-tomcat-9.0.62.tar.gz
sudo tar -zxvf apache-tomcat-9.0.62.tar.gz -C /opt
sudo mv /opt/apache-tomcat-9.0.62 /opt/tomcat
配置环境变量(编辑/etc/profile,添加以下内容):export CATALINA_HOME=/opt/tomcat
export PATH=$PATH:$CATALINA_HOME/bin
使环境变量生效:source /etc/profile。启动Tomcat并设置开机自启
sudo systemctl start tomcat
sudo systemctl enable tomcat
http://服务器IP:8080,若看到Tomcat欢迎页面,则说明安装成功。二、部署JSP项目
打包项目为WAR文件
pom.xml中设置<packaging>war</packaging>,然后运行:mvn clean package
生成的WAR文件位于target目录(如my-jsp-project.war)。WEB-INF/web.xml、JSP文件)打包成WAR(可使用jar cvf your-app.war *命令)。部署WAR文件到Tomcat
webapps目录(手动安装的Tomcat路径为/opt/tomcat/webapps,Yum安装的路径为/usr/share/tomcat/webapps):sudo cp target/my-jsp-project.war /opt/tomcat/webapps/
my-jsp-project),无需手动解压。访问JSP项目
部署完成后,通过浏览器访问http://服务器IP:8080/项目名/(如http://your-server-ip:8080/my-jsp-project/),若看到项目首页,则说明部署成功。
三、常见问题解决
端口被占用
若Tomcat无法启动,可能是8080端口被占用。解决方法:
/opt/tomcat/conf/server.xml(手动安装)或/usr/share/tomcat/conf/server.xml(Yum安装),找到<Connector port="8080">,将8080改为其他端口(如8081)。sudo netstat -tulnp | grep 8080查看进程ID,再用kill -9 进程ID终止进程。权限问题
若Tomcat无法访问WAR文件或项目目录,需修改权限:
sudo chown -R tomcat:tomcat /opt/tomcat/webapps/
sudo chmod -R 755 /opt/tomcat/webapps/
(假设Tomcat运行用户为tomcat,若使用Yum安装,默认用户为tomcat)。
JSP页面乱码
在JSP页面顶部添加以下代码,指定字符编码为UTF-8:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
或在web.xml中配置全局编码过滤器。
四、可选优化步骤
配置防火墙
若服务器启用了防火墙,需允许Tomcat端口(默认8080)的流量:
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp
sudo firewall-cmd --reload
设置Tomcat管理界面
若需要通过浏览器管理Tomcat(如上传WAR文件),需配置tomcat-users.xml(位于conf目录):
<role rolename="manager-gui"/>
<user username="admin" password="admin123" roles="manager-gui"/>
重启Tomcat后,可通过http://服务器IP:8080/manager/html访问管理界面。
自动化部署
可编写Shell脚本实现自动打包、复制、重启Tomcat(参考搜索结果中的deploy.sh示例),提高部署效率。