在配置CentOS Tomcat环境前,需确保系统已更新至最新版本,并具备root或具有sudo权限的用户账户:
sudo yum update -y
Tomcat依赖Java运行环境(JRE/JDK),需先安装OpenJDK 8(或更高版本,推荐1.8及以上):
sudo yum install -y java-1.8.0-openjdk-devel
安装完成后,验证Java是否安装成功:
java -version
若输出类似openjdk version "1.8.0_392"的信息,则说明安装成功。
apache-tomcat-9.0.87.tar.gz)。可使用wget命令直接下载:wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.87/bin/apache-tomcat-9.0.87.tar.gz
/opt目录(系统级软件推荐安装路径):sudo tar -zxvf apache-tomcat-9.0.87.tar.gz -C /opt
tomcat:sudo mv /opt/apache-tomcat-9.0.87 /opt/tomcat
为了让系统识别Tomcat命令(如startup.sh、shutdown.sh),需配置CATALINA_HOME(Tomcat安装路径)环境变量。
/etc/profile.d/tomcat.sh文件(系统级环境变量,对所有用户生效):sudo nano /etc/profile.d/tomcat.sh
/opt/tomcat替换为你的Tomcat实际路径):export CATALINA_HOME=/opt/tomcat
export PATH=$PATH:$CATALINA_HOME/bin
Ctrl+O→Enter→Ctrl+X),然后使配置生效:source /etc/profile.d/tomcat.sh
echo $CATALINA_HOME
若输出/opt/tomcat,则说明配置成功。为避免Tomcat以root权限运行(存在安全风险),需创建专用用户tomcat,并将其设为Tomcat目录的所有者:
tomcat用户组及用户(-s /bin/false表示禁止登录,-d /opt/tomcat指定家目录):sudo groupadd tomcat
sudo useradd -M -s /bin/nologin -g tomcat -d /opt/tomcat tomcat
-R表示递归修改所有子文件和目录):sudo chown -R tomcat:tomcat /opt/tomcat
tomcat用户可执行):sudo chmod +x /opt/tomcat/bin/*.sh
bin目录,执行startup.sh脚本:cd /opt/tomcat/bin
./startup.sh
若输出Tomcat started.,则说明启动成功。http://<服务器IP>:8080(如http://192.168.1.100:8080),若看到Tomcat欢迎页面,则说明配置成功。curl命令(无需打开浏览器):curl http://localhost:8080
若输出包含Tomcat的HTML内容,则说明启动成功。为确保系统重启后Tomcat自动运行,需创建systemd服务文件:
/etc/systemd/system/tomcat.service文件:sudo nano /etc/systemd/system/tomcat.service
JAVA_HOME路径,可通过echo $JAVA_HOME查看):[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
systemd配置:sudo systemctl daemon-reload
sudo systemctl enable tomcat
sudo systemctl start tomcat
sudo systemctl status tomcat
若显示active (running),则说明开机自启动配置成功。若服务器启用了firewalld防火墙,需开放Tomcat默认的8080端口(HTTP):
--permanent表示永久生效):sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
sudo firewall-cmd --zone=public --query-port=8080/tcp
若输出yes,则说明端口开放成功。conf/server.xml文件中的<Connector>标签的port属性(如改为8081):sudo nano /opt/tomcat/conf/server.xml
找到以下内容并修改:<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
保存后重启Tomcat生效。webapps目录(如/opt/tomcat/webapps),Tomcat会自动解压并部署:cp /path/to/your-app.war /opt/tomcat/webapps/
conf/web.xml,将<param-name>listings</param-name>的值改为false。webapps目录下的docs、examples、host-manager、manager等目录(生产环境无需这些示例应用)。conf/server.xml中的Server标签,添加server="Apache"(需Tomcat版本支持)。通过以上步骤,你已完成CentOS系统下Tomcat环境的配置,可正常运行和部署Java Web应用。