tomcat

发布时间 2023-11-20 21:39:05作者: 不爱学的李泽信

tomcat

1.Apr协议版安装

1.1 基础依赖安装

[root@localhost ~]# yum -y install gcc gcc-c++ libtool* autoconf automake expat-devel perl perl-devel

1.2 安装apr

[root@localhost soft]# tar xf apr-1.6.5.tar.gz
[root@localhost soft]# cd apr-1.6.5
[root@localhost apr-1.6.5]# sed -i "s/RM='\$RM'/RM='\$RM -f'/g" configure
[root@localhost apr-1.6.5]# ./configure --prefix=/usr/local/apr 
[root@localhost apr-1.6.5]# make
[root@localhost apr-1.6.5]# make install

1.3 安装apr-iconv

[root@localhost soft]# tar xf apr-iconv-1.2.2.tar.gz 
[root@localhost soft]# cd apr-iconv-1.2.2
[root@localhost apr-iconv-1.2.2]# ./configure --prefix=/usr/local/apr-iconv --with-apr=/usr/local/apr
[root@localhost apr-iconv-1.2.2]# make
[root@localhost apr-iconv-1.2.2]# make install

1.4 安装apr-util

[root@localhost soft]# tar xf apr-util-1.6.1.tar.gz 
[root@localhost soft]# cd apr-util-1.6.1
[root@localhost apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-apr-iconv=/usr/local/apr-iconv/bin/apriconv
[root@localhost apr-util-1.6.1]# make
[root@localhost apr-util-1.6.1]# make install

1.5 安装OpenSSL

[root@localhost soft]# tar xf openssl-1.1.1l.tar.gz 
[root@localhost soft]# cd openssl-1.1.1l
[root@localhost openssl-1.1.1l]# ./config --prefix=/usr/local/openssl
[root@localhost openssl-1.1.1l]# make -j $(grep processor /proc/cpuinfo | wc -l) 
[root@localhost openssl-1.1.1l]# make install

1.6 安装JDK

[root@localhost soft]# tar xf jdk-8u171-linux-x64.tar.gz  -C /data/

1.7 安装Tomcat

[root@localhost soft]# tar xf apache-tomcat-8.5.35.tar.gz -C /data/
[root@localhost soft]# mv /data/apache-tomcat-8.5.35/ /data/tomcat85

1.8 安装Tomcat-native

[root@localhost soft]# cd /data/tomcat85/bin/
[root@localhost bin]# tar xf tomcat-native.tar.gz 
[root@localhost bin]# cd tomcat-native-1.2.18-src/native/
[root@localhost native]# ./configure --with-ssl=/usr/local/openssl -with-apr=/usr/local/apr --with-java-home=/data/jdk1.8.0_171/
[root@localhost native]# make
[root@localhost native]# make install

1.9 设置tomcat启动权限

[root@localhost data]# useradd  hanweb
[root@localhost data]# echo hanweb | passwd  --stdin hanweb
[root@localhost data]# chown -R hanweb.hanweb /data/tomcat85

1.10 修改tomcat参数

[root@localhost data]# sed -i 's#Connector port="8080" protocol="HTTP/1.1"#Connector port="8080" protocol="org.apache.coyote.http11.Http11AprProtocol"#g' /data/tomcat85/conf/server.xml 

[root@localhost data]# sed -i 's#Connector port="8009" protocol="AJP/1.3"#Connector port="8009" protocol="org.apache.coyote.ajp.AjpAprProtocol"#g' /data/tomcat85/conf/server.xml

[root@localhost data]# sed -i 's/connectionTimeout="20000"/connectionTimeout="20000"\n\t\tURIEncoding="UTF-8"\n\t\tmaxThreads="600"\n\t\tminSpareThreads="100"\n\t\tmaxSpareThreads="500"\n\t\tacceptCount="700"\n\t\tenableLookups="false"/g' /data/tomcat85/conf/server.xml

1.11 修改catalina.out

[root@localhost data]# sed -i '2a JAVA_OPTS=\"-server -Xmx2g -Xms1g -XX:MetaspaceSize=512m -XX:MaxMetaspaceSize=1024m -Djava.awt.headless=true\" \n ' /data/tomcat85/bin/catalina.sh 

sed -i '3a CATALINA_OPTS="-Dfile.encoding=UTF-8" \n ' /data/tomcat85/bin/catalina.sh 
sed -i "4a export JAVA_HOME=/data/jdk1.8.0_171 \n" /data/tomcat85/bin/catalina.sh 
sed -i "5a export PATH=$PATH:$JAVA_HOME/bin \n" /data/tomcat85/bin/catalina.sh 
sed -i "6a export LD_LIBRARY_PATH=/usr/local/apr/lib:$LD_LIBRARY_PATH" /data/tomcat85/bin/catalina.sh 

1.12 添加重启脚本

[root@localhost ~]# vi /data/tomcat85/bin/restart.sh
#!/bin/bash

# Date:2023-1-9
# Author:lixuehuan
# Version:1.0

# 路径
App_Path=$(cd `dirname $0`;pwd)
# 获取Old_PID
PID=`ps -ef|grep java|grep -v grep|grep $App_Path |awk '{print $2}'`

function RESTART() {
        echo -e "\033[35m Tomcat restarting! \033[0m"

        if [[ -n $PID ]];then
                echo -e "\033[35m Stop App! \033[0m" 
                kill -9 $PID
                sleep 5
                echo -e "\033[35m Start clearing the cache! \033[0m"
                rm -rf ${App_Path}/../work/Catalina
                sleep 3
                echo -e "\033[35m Start App! \033[0m"
                ${App_Path}/startup.sh 2>&1 >/dev/null
                New_PID=`ps -ef|grep java|grep -v grep|grep $App_Path |awk '{print $2}'`
                echo -e "\033[35m Application startup completed,New PID is ${New_PID} \033[0m"
        else
                echo -e "\033[32m There are no running processes \033[0m"
                echo -e "\033[35m Start clearing the cache! \033[0m"
                rm -rf ${App_Path}/../work/Catalina
                echo -e "\033[35m Start App! \033[0m"
                ${App_Path}/startup.sh 2>&1 >/dev/null
                New_PID=`ps -ef|grep java|grep -v grep|grep $App_Path |awk '{print $2}'`
                sleep 10
                echo -e "\033[35m Application startup completed,New PID is ${New_PID}  \033[0m"
        fi
  exit
}
RESTART

[root@localhost ~]# chown hanweb.hanweb /data/tomcat85/bin/restart.sh
[root@localhost ~]# chmod 750 /data/tomcat85/bin/restart.sh
  • 添加停止脚本
[root@localhost ~]# vi /data/tomcat85/bin/stop.sh
#!/bin/bash
# Date:2023-1-9
# Author:lixuehuan
# Version:1.0


# 路径
App_Path=$(cd `dirname $0`;pwd)

# 获取PID
PID=`ps -ef|grep java|grep -v grep|grep $App_Path |awk '{print $2}'`

function STOP(){
        kill -9 $PID
}

# 执行杀死进程
STOP

[root@localhost ~]# chown hanweb.hanweb /data/tomcat85/bin/stop.sh
[root@localhost ~]# chmod 750 /data/tomcat85/bin/restart.sh

2.普通安装

2.1 解压jdk

[root@localhost ~]# tar xf jdk-8u221-linux-x64.tar.gz -C /data/

2.2 解压tomcat

[root@localhost ~]# tar xf apache-tomcat-8.5.89.tar.gz -C /data/
[root@localhost ~]# mv apache-tomcat-8.5.89/ tomcat85

2.3 配置参数与启动

useradd tomcat ;echo tomcat |passwd --stdin tomcat
chown -R tomcat.tomcat /data/tomcat85/

vim /data/tomcat85/conf/server.xml
<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               URIEncoding="UTF-8"
               maxConnections="1000"
               maxThreads="1000"
               minSpareThreads="100"
               processorCache="1000"
               acceptCount="1000"
               />
               
vim /etc/profile
JAVA_HOME=/data/jdk1.8.0_171
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH

source /etc/profile


/

3. tomcat小版本升级

# 1.停止旧版本tomcat
# 2.备份旧版本lib
[root@localhost ~]# mv /data/tomcat85/lib /data/tomcat85/lib_bak

# 2.解压新版本tomcat
[root@localhost ~]# tar xf apache-tomcat-8.5.90.tar.gz

# 3.将新版本lib移动到老版本路径下
[root@localhost soft]# cd apache-tomcat-8.5.90/
[root@localhost apache-tomcat-8.5.90]# mv lib/ /data/tomcat85/

# 4.赋权
[root@localhost tomcat85]# chown -R hanweb.hanweb lib

# 5.重启