环境软件信息
centos-7.2
jdk-1.8.0_201
tomcat-8.5.41
apr-1.6.5
apr-iconv-1.2.2
apr-util-1.6.1
openssl-1.1.2
由于已经安装了jdk和tomcat,这里不在陈述
[root@qa data]# uname -a
Linux qa 3.10.0-1160.62.1.el7.x86_64 #1 SMP Tue Apr 5 16:57:59 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
[root@qa data]# java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)
[root@qa data]# /data/tomcat1/bin/version.sh
Using CATALINA_BASE: /data/tomcat1
Using CATALINA_HOME: /data/tomcat1
Using CATALINA_TMPDIR: /data/tomcat1/temp
Using JRE_HOME: /usr/local/jdk1.8.0_201/jre
Using CLASSPATH: /data/tomcat1/bin/bootstrap.jar:/data/tomcat1/bin/tomcat-juli.jar
Server version: Apache Tomcat/8.5.41
Server built: May 4 2019 09:17:16 UTC
Server number: 8.5.41.0
OS Name: Linux
OS Version: 3.10.0-1160.62.1.el7.x86_64
Architecture: amd64
JVM Version: 1.8.0_201-b09
JVM Vendor: Oracle Corporation
1、安装apr-1.6.5&apr-iconv-1.2.2&apr-util-1.6.1&openssl-1.1.2
提前准备好相关资源包
创建所需目录&解压文件
mkdir -p /usr/local/apr-1.6.5
mkdir -p /usr/local/apr-iconv-1.2.2
mkdir -p /usr/local/apr-util-1.6.1
tar -zxvf apr-1.6.5.tar.gz
tar -zxvf apr-iconv-1.2.2.tar.gz
tar -zxvf apr-util-1.6.1.tar.gz
注意:
这个版本的apr可能需要修改一下configure, 注释掉 "RM"cfgfile"
cd apr-1.6.5
vi configure
# $RM "$cfgfile"
编译安装
cd apr-1.6.5
./configure --prefix=/usr/local/apr-1.6.5
make
make install
cd apr-iconv-1.2.2
./configure --prefix=/usr/local/apr-iconv-1.2.2 --with-apr=/usr/local/apr-1.6.5
cd apr-util-1.6.1
./configure --prefix=/usr/local/apr-util-1.6.1 --with-apr=/usr/local/apr-1.6.5 --with-apr-iconv=/usr/local/apr-iconv-1.2.2
make
make install
可能报错:
xml/apr_xml.c:35:19: fatal error: expat.h: No such file or directory
解决方法:
安装expat库
yum install -y expat-devel
配置环境变量
vi /etc/profile
export JAVA_HOME=/usr/local/jdk1.8.0_201
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH:/usr/local/apr-1.6.5/bin:/usr/local/apr-util-1.6.1/bin:/usr/local/apr/bin
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${LD_LIBRARY_PATH}:/usr/local/apr-1.6.5/lib:/usr/local/apr-util-1.6.1/lib
source /etc/profile
安装openssl
unzip openssl-master-1.1.2.zip
cd openssl-master
mkdir -p /usr/local/openssl-1.1.2
./config --prefix=/usr/local/openssl-1.1.2
make
make install
可能报错
缺少IPC/Cmd.pm模块
解决方式
安装perl-CPAN
yum install -y perl-CPAN
进入CPAN的shell模式,首次进入需要配置shell,按照提示操作即可
perl -MCPAN -e shell
在shell中安装缺少的模块
install IPC/Cmd.pm
2、安装tomcat-native
在tomcat的安装目录下就有bin/tomcat-native.tar.gz,进入tomcat的安装目录
tar -zxvf tomcat-native.tar.gz
cd tomcat-native-1.2.21-src/native
./configure --with-apr=/usr/local/apr-1.6.5 --with-ssl=/usr/local/openssl-1.1.2
make
make install
3、配置tomcat引入apr
向conf/server.xml添加
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" useAprConnector="true"/>
创建文件连接
ln -s /usr/local/apr/lib/libtcnative-1.so /usr/lib64/libtcnative-1.so
再次修改环境变量,增加/usr/local/apr/信息
vi /etc/profile
export PATH=${JAVA_HOME}/bin:$PATH:/usr/local/apr-1.6.5/bin:/usr/local/apr-util-1.6.1/bin:/usr/local/apr/bin
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${LD_LIBRARY_PATH}:/usr/local/apr-1.6.5/bin:/usr/local/apr-util-1.6.1/bin:/usr/local/apr/lib
source /etc/profile
重启Tomcat
12-Aug-2022 16:36:07.876 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded APR based Apache Tomcat Native library [1.2.21] using APR version [1.6.5].
12-Aug-2022 16:36:07.876 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
12-Aug-2022 16:36:07.876 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL configuration: useAprConnector [true], useOpenSSL [true]
12-Aug-2022 16:36:07.879 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized [OpenSSL 1.0.2k-fips 26 Jan 2017]
12-Aug-2022 16:36:07.963 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-apr-80"]
12-Aug-2022 16:36:07.974 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-apr-8019"]
12-Aug-2022 16:36:07.975 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 348 ms
省略部分日志....
12-Aug-2022 16:36:18.961 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-apr-80"]
12-Aug-2022 16:36:18.968 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-apr-8019"]
12-Aug-2022 16:36:18.970 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 994 ms
出现上述日志,说明安装成功!