JSP项目在Ubuntu上如何部署
导读:在 Ubuntu 上部署 JSP 项目的标准流程 一 准备环境 安装 JDK 11(推荐 LTS): 执行:sudo apt update && sudo apt install openjdk-11-jdk 验证:j...
在 Ubuntu 上部署 JSP 项目的标准流程
一 准备环境
- 安装 JDK 11(推荐 LTS):
- 执行:
sudo apt update & & sudo apt install openjdk-11-jdk - 验证:
java -version应显示 openjdk 11 版本信息
- 执行:
- 安装 Apache Tomcat 9(两种常用方式,二选一)
- 方式 A(系统包,便于管理):
sudo apt install tomcat9- 安装完成后 Tomcat 通常会自动启动,可用
sudo systemctl status tomcat9查看状态
- 安装完成后 Tomcat 通常会自动启动,可用
- 方式 B(官方压缩包,便于多版本并存):
- 下载:
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.56/bin/apache-tomcat-9.0.56.tar.gz - 解压:
sudo tar -zxvf apache-tomcat-9.0.56.tar.gz -C /opt - 软链:
sudo ln -s /opt/apache-tomcat-9.0.56 /usr/local/tomcat - 启动:
/usr/local/tomcat/bin/startup.sh - 验证:
curl http://localhost:8080能看到 Tomcat 欢迎页
- 下载:
- 方式 A(系统包,便于管理):
- 防火墙放行端口(如启用 UFW):
sudo ufw allow 8080/tcp
二 部署应用
- 准备应用包:将项目打包为 WAR(例如 myapp.war)
- 部署方式(三选一)
- 自动部署:将 WAR 放入 Tomcat 的 webapps 目录
- APT 安装路径:
sudo cp myapp.war /var/lib/tomcat9/webapps/ - 官方包路径:
sudo cp myapp.war /usr/local/tomcat/webapps/ - Tomcat 会自动解压并部署,访问:
http://服务器IP:8080/myapp
- APT 安装路径:
- 管理控制台部署:访问
http://服务器IP:8080/manager/html- 使用配置的 manager 账号登录后上传 WAR 并部署
- 目录方式:在 webapps 下创建目录并放入 JSP/静态资源
- 示例:
sudo mkdir -p /usr/local/tomcat/webapps/myapp,复制文件后访问http://服务器IP:8080/myapp
- 示例:
- 自动部署:将 WAR 放入 Tomcat 的 webapps 目录
三 可选配置
- 反向代理与 HTTPS(Nginx + Let’s Encrypt)
- 安装:
sudo apt install certbot python3-certbot-nginx - 申请证书:
sudo certbot --nginx -d your_domain.com - 反向代理示例(/etc/nginx/sites-available/your_domain.com):
server { listen 80; server_name your_domain.com www.your_domain.com; location / { proxy_pass http://localhost:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } - 启用与生效:
sudo ln -s /etc/nginx/sites-available/your_domain.com /etc/nginx/sites-enabled/sudo nginx -t & & sudo systemctl restart nginx
- 访问:
https://your_domain.com(HTTP 将自动跳转至 HTTPS)
- 安装:
- 运行用户与权限(官方包推荐)
- 创建用户/组:
sudo groupadd tomcat & & sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat - 设置权限:
sudo chgrp -R tomcat /opt/tomcatsudo chmod -R 755 /opt/tomcat/conf/sudo chown -R tomcat /opt/tomcat/webapps/ /opt/tomcat/work/ /opt/tomcat/temp/ /opt/tomcat/logs/
- 创建用户/组:
- systemd 服务(官方包推荐)
- 新建:
sudo nano /etc/systemd/system/tomcat.service - 示例:
[Unit] Description=Apache Tomcat Web Application Container After=network.target [Service] Type=forking Environment=JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid Environment=CATALINA_HOME=/opt/tomcat Environment=CATALINA_BASE=/opt/tomcat Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC' Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom' ExecStart=/opt/tomcat/bin/startup.sh ExecStop=/opt/tomcat/bin/shutdown.sh Restart=always RestartSec=10 [Install] WantedBy=multi-user.target - 启用:
sudo systemctl daemon-reload & & sudo systemctl start tomcat & & sudo systemctl enable tomcat
- 新建:
- 数据库(如 MySQL)
- 安装:
sudo apt install mysql-server - 在项目中加入 MySQL JDBC 驱动(如 mysql-connector-java),JDBC URL 示例:
jdbc:mysql://localhost:3306/your_db?useSSL=false& characterEncoding=UTF-8& serverTimezone=UTC
- 安装:
四 验证与常见问题
- 验证要点
- Tomcat 欢迎页:
http://服务器IP:8080 - 应用首页:
http://服务器IP:8080/your_app/ - 管理控制台:
http://服务器IP:8080/manager/html(需配置 manager 账号)
- Tomcat 欢迎页:
- 常见问题
- 端口占用:修改 conf/server.xml 中的
< Connector port="8080">为未占用端口,重启 Tomcat - 权限错误:确保 Tomcat 用户对 webapps、logs、work、temp 等目录具备正确权限
- 中文乱码:在 JSP 顶部添加
< %@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>,并统一项目与数据库字符集为 UTF-8 - 数据库连接失败:检查驱动 JAR 是否在 WEB-INF/lib,确认 JDBC URL、用户名、密码 与数据库服务状态
- 端口占用:修改 conf/server.xml 中的
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: JSP项目在Ubuntu上如何部署
本文地址: https://pptw.com/jishu/767951.html
