Skip to content

J2EE_004 Tomcat安装及部署笔记

目录

  1. Tomcat简介
  2. Tomcat安装
  3. Tomcat目录结构
  4. 部署Web应用
  5. 常见配置
  6. 安全加固
  7. 常见问题

1. Tomcat简介

  • Tomcat 是Apache基金会开源的轻量级Web应用服务器,支持Servlet/JSP规范,是Java Web开发的核心容器。
  • 版本选择
    • Tomcat 10.x(对应Jakarta EE 9+,包名从javax改为jakarta
    • Tomcat 9.x(对应Java EE 8,包名为javax,推荐学习兼容性更好)
  • 官网下载https://tomcat.apache.org

2. Tomcat安装

Windows安装

  1. 下载解压

    • 下载apache-tomcat-9.0.xx.zip(或.exe安装版)。
    • 解压到无空格路径(如D:\tomcat9)。
  2. 配置环境变量(可选)

    bash
    CATALINA_HOME = D:\tomcat9
    • %CATALINA_HOME%\bin添加到PATH环境变量。
  3. 启动/停止Tomcat

    bash
    # 启动  
    startup.bat  
    # 停止  
    shutdown.bat
  4. 验证安装

Linux安装

  1. 下载解压

    bash
    wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.xx/bin/apache-tomcat-9.0.xx.tar.gz  
    tar -zxvf apache-tomcat-9.0.xx.tar.gz -C /opt
  2. 启动/停止

    bash
    # 启动  
    /opt/tomcat9/bin/startup.sh  
    # 停止  
    /opt/tomcat9/bin/shutdown.sh
  3. 开放防火墙端口

    bash
    sudo firewall-cmd --permanent --add-port=8080/tcp  
    sudo firewall-cmd --reload

3. Tomcat目录结构

├── bin     # 启动/停止脚本  
├── conf    # 配置文件(server.xml、web.xml)  
├── logs    # 日志文件  
├── webapps # 部署的Web应用目录  
├── work    # JSP编译后的Servlet文件  
└── lib     # 依赖库

4. 部署Web应用

方式1: WAR包部署

  1. 打包项目为xxx.war(Maven项目:mvn clean package)。
  2. 将WAR文件复制到tomcat/webapps目录。
  3. Tomcat自动解压并部署,访问路径:http://localhost:8080/xxx

方式2: 目录直接部署

  1. webapps下创建目录myapp
  2. 将Web资源(JSP/Servlet/HTML)放入myapp,结构如下:
    myapp/  
    ├── WEB-INF/  
    │   ├── web.xml        # 部署描述文件  
    │   └── classes/       # 编译后的.class文件  
    └── index.jsp          # 入口页面
  3. 访问路径:http://localhost:8080/myapp

方式3: IDEA集成Tomcat部署

  1. 添加Tomcat配置
    • 打开Run/Debug Configurations → 点击+ → 选择Tomcat Server → 配置Tomcat路径。
  2. 部署项目
    • Deployment标签页 → 添加Artifact(WAR包或Exploded模式)。
  3. 启动调试
    • 点击运行,IDEA自动启动Tomcat并部署应用。

5. 常见配置

1. 修改端口号

  • 编辑conf/server.xml,找到<Connector>标签:
xml
  <Connector port="8080" protocol="HTTP/1.1" />

修改port值为其他端口(如80)。

2. 内存调优

  • 修改bin/catalina.sh(Linux)或catalina.bat(Windows):
    bash
    # Linux  
    export JAVA_OPTS="-Xms512m -Xmx1024m"  
    # Windows  
    set "JAVA_OPTS=-Xms512m -Xmx1024m"

3. 日志管理

  • 查看日志
    • 控制台日志:logs/catalina.out
    • 访问日志:logs/localhost_access_log.*.txt
  • 日志级别调整:修改conf/logging.properties

4. 虚拟主机配置

  • server.xml中添加<Host>
    xml
    <Host name="www.example.com" appBase="webapps_example" />

6. 安全加固

  1. 删除默认应用
    • 清空webapps下的docsexamplesmanager等目录。
  2. 禁用管理页面
    • 注释conf/tomcat-users.xml中的管理员账号配置。
  3. 配置防火墙
    • 仅开放必要端口(如80、443)。

7. 常见问题

1. 启动失败:端口冲突

  • 错误信息:Address already in use
  • 解决:
    • 关闭占用端口的进程(如其他Tomcat实例)。
    • 修改server.xml中的端口号。

2. 访问404:应用未部署

  • 检查:
    • WAR包是否在webapps目录。
    • 应用目录结构是否符合规范。

3. 中文乱码

  • conf/server.xml<Connector>标签添加:
    xml
    <Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" 
               URIEncoding="UTF-8" />