温馨提示×

centos服务器jsp部署流程是怎样的

小樊
42
2025-12-29 10:51:36
栏目: 云计算

CentOS 服务器 JSP 部署流程

一 准备与安装

  • 安装 Java(推荐 OpenJDK 8):
    • 安装命令:sudo yum install -y java-1.8.0-openjdk
    • 验证版本:java -version
  • 安装 Tomcat(两种常用方式,二选一)
    • 方式 A(系统包管理器):sudo yum install -y tomcat,安装后应用默认目录为 /usr/share/tomcat/webapps,可用 systemctl start|enable tomcat 管理。
    • 方式 B(官方二进制包):
      • 下载并解压:wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.56/bin/apache-tomcat-9.0.56.tar.gz && tar -xzvf apache-tomcat-9.0.56.tar.gz -C /opt
      • 重命名:sudo mv /opt/apache-tomcat-9.0.56 /opt/tomcat
      • 环境变量(可选):在 /etc/profile 中添加 export CATALINA_HOME=/opt/tomcat,执行 source /etc/profile
      • 启动测试:/opt/tomcat/bin/startup.sh,访问 http://服务器IP:8080 出现欢迎页即成功。

二 部署与发布

  • 打包应用:将项目打成 WAR(Maven 项目执行 mvn clean package,WAR 位于 target/ 目录)。
  • 上传与部署:
    • 系统包管理器安装的 Tomcat:sudo cp your-app.war /usr/share/tomcat/webapps/
    • 二进制安装的 Tomcat:sudo cp your-app.war /opt/tomcat/webapps/
    • Tomcat 会自动解压并部署,访问 http://服务器IP:8080/your-app
  • 部署到根路径(ROOT):清空 webapps/ROOT 目录,将 WAR 重命名为 ROOT.war 放入,或解压到 ROOT/,访问 http://服务器IP:8080/
  • 快速自检:在 webapps/ROOT/ 放置测试页 test.jsp
    • 内容:<%@ page contentType="text/html;charset=UTF-8" language="java" %><h1>Hello JSP</h1>
    • 访问 http://服务器IP:8080/test.jsp

三 服务管理与防火墙

  • 使用 systemd 管理(推荐为 Tomcat 创建专用用户)
    • 创建用户与授权:
      • sudo groupadd tomcat
      • sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
      • sudo chown -R tomcat:tomcat /opt/tomcat
    • 创建服务文件 /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-1.8.0-openjdk
      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
      User=tomcat
      Group=tomcat
      UMask=0007
      RestartSec=10
      Restart=always
      
      [Install]
      WantedBy=multi-user.target
      
    • 启用与启动:
      • sudo systemctl daemon-reload
      • sudo systemctl start tomcat
      • sudo systemctl enable tomcat
  • 防火墙放行(firewalld)
    • 放行 8080:sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent && sudo firewall-cmd --reload
    • 如使用云服务器,还需在云厂商安全组放行 8080 端口。

四 常见问题与优化

  • 端口被占用:修改 conf/server.xml<Connector port="8080" ... /> 的端口后重启 Tomcat。
  • 权限问题:确保 tomcat:tomcat 对 Tomcat 目录具备正确权限(见上文 systemd 配置)。
  • 乱码:在 JSP 顶部声明编码 <%@ page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8" %>
  • 内存与 GC:在 CATALINA_OPTS 中设置 -Xms-Xmx(如 -Xms512M -Xmx1024M),可按需调整。
  • 访问日志与排错:查看 logs/catalina.outlogs/localhost.log*,定位部署与运行异常。

0