【原创】tomcat9之编译安装全过程

本文介绍如何在CentOS7.9系统上使用Java8编译安装Tomcat9,并解决了相关兼容性问题。文章详细记录了从下载到配置环境变量、编译安装Tomcat9及配置日志路径等全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如题,据说tomcat10升级后存在较严重兼容性问题,部分旧项目甚至需要改造源码才能正常运行。
为最大程度兼容旧项目,坚决采用tomcat9编译安装;大爱Java8,也坚决表示不升级!
编译环境:centos7.9+java8+tomcat9

1、下载tomcat
打开汤姆家网站,进入tomcat9下载页面
截止目前最新版本是9.0.58
README:Tomcat 9.0 requires Java 8 or later.
注意:下载二进制tar包而非源码包,上传源码包到/usr/local/src

2、下载java
进入jdk下载页面

 上传源码包到/usr/local/src

3、配置java环境

rpm -qa | grep java  # 检测本地是否有安装
java -version # 查看java版本号
mkdir -p /usr/local/java/jdk1.8.0  # 创建java目录
cd /usr/local/src
tar -zxvf jdk-8u301-linux-x64.tar.gz
mv -f jdk1.8.0_301/* /usr/local/java/jdk1.8.0 # 安装Java
vim /etc/profile # 配置环境变量

profile末尾加入

JAVA_HOME=/usr/local/java/jdk1.8.0
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME PATH CLASSPATH

source /etc/profile # 修改立刻生效
echo $PATH # 查看系统环境
java -version #测试是否成功

4、编译tomcat9
假设安装目录 /usr/local/tomcat,日志目录 /data/logs/tomcat

1)创建目录

mkdir /usr/local/tomcat
mkdir /usr/local/tomcat/logs
mkdir /usr/local/tomcat/temp
mkdir /data/logs/tomcat

2)安装tomcat

cd /usr/local/src/
tar zxvf apache-tomcat-9.0.58.tar.gz
cp -rp /usr/local/src/apache-tomcat-9.0.58/* /usr/local/tomcat

3)安装commons-daemon-native

cd /usr/local/tomcat/bin
tar -zxvf commons-daemon-native.tar.gz
cd /usr/local/tomcat/bin/commons-daemon-1.2.4-native-src/unix
./configure --with-java=/usr/local/java/jdk1.8.0
make

4)复制jsvc文件到bin目录

cp jsvc /usr/local/tomcat/bin

5)创建tomcat用户(以tomcat账号运行)

groupadd tomcat
useradd -g tomcat -s /sbin/nologin tomcat

6)开机启动(3处修改)

vim /usr/local/tomcat/bin/daemon.sh

#!/bin/sh
# chkconfig: 2345 86 16 

PRG=/usr/local/tomcat
JAVA_HOME=/usr/local/java/jdk1.8.0
CATALINA_HOME=/usr/local/tomcat
TOMCAT_USER=tomcat

test ".$CATALINA_OUT" = . && CATALINA_OUT="/web/logs/tomcat/catalina-daemon.out

chmod +x /usr/local/tomcat/bin/*.sh
cp -p /usr/local/tomcat/bin/daemon.sh /etc/init.d/tomcat
chmod +x /etc/init.d/tomcat
chkconfig --add tomcat
chkconfig --level 2345 tomcat on

7)修改日志位置

vim /usr/local/tomcat/conf/logging.properties

1catalina.org.apache.juli.AsyncFileHandler.level = WARNING
1catalina.org.apache.juli.AsyncFileHandler.directory = /data/logs/tomcat
2localhost.org.apache.juli.AsyncFileHandler.directory = /data/logs/tomcat
3manager.org.apache.juli.AsyncFileHandler.directory = /data/logs/tomcat
4host-manager.org.apache.juli.AsyncFileHandler.directory = /data/logs/tomcat

vim /usr/local/tomcat/bin/catalina.sh

if [ -z "$CATALINA_OUT" ] ; then
  CATALINA_OUT=/web/logs/tomcat/catalina.out
fi

8)定义日志格式

vim /usr/local/tomcat/conf/server.xml

<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="/data/logs/tomcat" prefix="localhost_access_log." suffix=".txt"
pattern="combined" resolveHosts="false" fileDateFormat="yyyy-MM-dd" />

9)设置文件夹权限

通常不建议把站点放在默认webapps下,出于安全原因,最好把webapps文件夹清空。

假设新站点位于/data/www/web1

注意:为tomcat安装目录、日志目录和站点所在文件夹分别配置tomcat账号的权限

chown -R tomcat:tomcat /usr/local/tomcat
chown -R tomcat:tomcat /data/logs/tomcat
chown -R tomcat:tomcat /data/www/web1

10)启动和停止测试,搞定!

service tomcat start
service tomcat stop

至于配置tomcat访问根目录、虚拟主机和虚拟目录,不在本文讨论之列~需要的话,另文详细描述~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值