Apache Tomcat on CentOS: 安装与配置指南
一、简介
Apache Tomcat 是一个由 Apache 软件基金会开发的开源 Java Web 应用服务器和 Servlet 容器,Tomcat 提供了一个运行 Java 代码的环境,支持所有的 Java EE(企业版)标准,包括 Servlets、JSP(JavaServer Pages)、EL(表达式语言)和 WebSocket,本文档将详细介绍如何在 CentOS 系统上安装、配置和管理 Apache Tomcat。
二、先决条件
在开始安装 Tomcat 之前,确保系统满足以下条件:
1、操作系统:CentOS 7 或更新版本。
2、用户账户:建议创建单独的非 root 用户账户用于运行 Tomcat,以提高系统安全性。
3、基本命令工具:如wget
、tar
、vim
等。
4、网络连接:需要良好的互联网连接来下载所需的软件包。
三、安装步骤详解
1. 创建非 root 用户账户
创建一个名为tomcat
的非 root 用户账户,这将用于运行 Tomcat 服务。
sudo groupadd tomcat sudo useradd M s /bin/nologin g tomcat d /opt/tomcat tomcat
2. 安装 Java Development Kit (JDK)
Tomcat 需要一个兼容的 Java 运行时环境(JRE)或 Java 开发工具包(JDK),执行以下命令安装 OpenJDK:
sudo yum install java1.8.0openjdkdevel
3. 下载并解压 Tomcat
使用wget
下载最新的 Tomcat 压缩包,并解压到指定目录:
cd ~ sudo wget https://downloads.apache.org/tomcat/tomcat9/v9.0.64/bin/apachetomcat9.0.64.tar.gz sudo tar xzf apachetomcat9*tar.gz C /opt sudo mv /opt/apachetomcat9* /opt/tomcat
4. 配置权限
为了安全起见,设置适当的文件权限,使tomcat
用户对 Tomcat 目录具有完全控制权:
sudo chown R tomcat:tomcat /opt/tomcat sudo chmod R g+r /opt/tomcat/conf sudo chmod g+x /opt/tomcat/conf sudo chown R tomcat:tomcat /opt/tomcat/webapps/ work/ temp/ logs/
5. 创建 Systemd 单元文件
为了使 Tomcat 作为系统服务运行,创建一个 Systemd 单元文件:
sudo vi /etc/systemd/system/tomcat.service
添加以下内容到文件中:
[Unit] Description=Apache Tomcat Web Application Container After=syslog.target network.target [Service] Type=forking Environment=JAVA_HOME=/usr/lib/jvm/jre 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=multiuser.target
保存并关闭文件,然后重新加载 Systemd,使新的服务文件生效:
sudo systemctl daemonreload
6. 启动并启用 Tomcat
您可以启动 Tomcat 服务,并设置其开机自启:
sudo systemctl start tomcat sudo systemctl enable tomcat
要检查 Tomcat 服务状态,请执行:
sudo systemctl status tomcat
7. 访问 Tomcat Web 界面
打开浏览器并访问http://<Your_Server_IP>:8080
,其中<Your_Server_IP>
是您的服务器 IP 地址,如果一切正常,您应该能看到 Tomcat 的欢迎页面。
四、常见问题及解答(FAQs)
Q1: 如何更改 Tomcat 的默认端口号?
A1: 编辑/opt/tomcat/conf/server.xml
文件,找到以下行:
<Connector port="8080" protocol="HTTP/1.1" ... />
将port="8080"
修改为所需的端口号,例如port="9090"
,然后保存文件并重启 Tomcat:
sudo systemctl restart tomcat
Q2: Tomcat 无法启动,应如何排查问题?
A2: 可以按照以下步骤进行排查:
1、检查日志文件:查看/opt/tomcat/logs/catalina.out
和/opt/tomcat/logs/localhost.log
中的日志信息,寻找错误提示。
2、确认端口是否被占用:确保 Tomcat 配置的端口未被其他应用程序占用,可以使用命令sudo netstat tuln | grep <port_number>
检查端口占用情况。
3、检查配置文件:确保server.xml
和其他配置文件没有语法错误或拼写错误。
4、检查权限:确保tomcat
用户对 Tomcat 目录及其子目录具有适当的读取和写入权限。
5、增加内存分配:如果遇到内存不足的错误,可以尝试增加CATALINA_OPTS
中的最大堆内存设置,例如将Xmx512M
改为Xmx1G
。
6、依赖性问题:确保所有必要的依赖项都已正确安装,特别是 Java 运行时环境的版本兼容性。