主机:10.10.10.62、10.10.10.63、10.10.10.64、10.10.10.65
用户:root
创建目录
mkdir -p /data/tomcat9.0
解压安装包
cd /data/soft/pkgs
tar -xf apache-tomcat-9.0.48.tar.gz
移动到指定目录
mv apache-tomcat-9.0.48 /data/tomcat9.0/9.0.48
定义环境变量
vim /etc/environment
export JAVA_HOME=/usr/java/jdk-11.0.11
export CATALINA_HOME=/data/tomcat9.0/9.0.48
source /etc/environment
转到文件夹
cd /data/tomcat9.0/9.0.48
添加用户和用户组并更改权限
groupadd -r tomcat9.0
useradd -r -d /data/tomcat9.0 -g tomcat9.0 -s /bin/false tomcat9.0
chown -R tomcat9.0:tomcat9.0 /data/tomcat9.0
赋予sudoer权限
vi /etc/sudoers
#root ALL=(ALL) ALL下添加
tomcat9.0 ALL=(ALL) ALL
更改bin/、 lib/和webapps/ 的所有者和访问权限
chown -Rh tomcat9.0:tomcat9.0 bin/ lib/ webapps/
chmod 775 bin/ lib/ webapps/
更改usr/share/tomcat9.0/9.0.xx的所有者和访问权限
chown -R tomcat9.0:tomcat9.0 /data/tomcat9.0/9.0.48
chmod -R 775 /data/tomcat9.0/9.0.48
更改conf/的所有者和访问权限
chown -Rh root:tomcat9.0 conf/
chmod -R 640 conf
chown -R tomcat9.0:tomcat9.0 /data/tomcat9.0/9.0.48
chmod -R 777 /data/tomcat9.0/9.0.48
更改logs/、 temp/和work/ 的访问权限
chown -R tomcat9.0:tomcat9.0 logs/ temp/ work/
chmod 760 logs/ temp/ work/
配置context
消对context.xml 中的Manager元素的注释,以防止会话在重新启动后持续存在。在文本编辑器(以 root 用户身份)中打开/data/tomcat9.0/9.0.xx/conf/context.xml并删除<Manager pathname="" />注释。
vim /data/tomcat9.0/9.0.48/conf/context.xml
<!--
<Manager pathname="" />
-->
<Manager pathname="" />
安装jsvc
将 Tomcat 设置为启动时启动的服务。首先,如果您的系统上尚未安装 JSVC(以 root 身份)
cd /data/tomcat9.0/9.0.48/bin/tar xvfz commons-daemon-native.tar.gzcd commons-daemon-*-native-src/unixyum -y install gcc gcc-c++ make net-tools telnet unzip patch wget openssl openssl-devel pcre-devel./configure --with-java=$JAVA_HOMEmakecp jsvc ../..
配置Tomcat服务
touch /usr/lib/systemd/system/tomcat.service
在文本编辑器中(以 root 用户身份)打开/usr/lib/systemd/system/tomcat.service并粘贴以下内容
vim /usr/lib/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
PIDFile=/var/run/tomcat.pid
Environment=HTTP_PORT=8888
Environment=IGNITE_WORK_DIR=/data/ignite/work
Environment=IGNITE_NO_SHUTDOWN_HOOK=true
Environment=CATALINA_PID=/var/run/tomcat.pid
Environment=JAVA_HOME=/usr/java/jdk-11.0.11
Environment=CATALINA_HOME=/data/tomcat9.0/9.0.48
Environment=CATALINA_BASE=/data/tomcat9.0/9.0.48
Environment=CATALINA_OPTS=
ExecStart=/data/tomcat9.0/9.0.48/bin/jsvc \
-Dcatalina.home=${CATALINA_HOME} \
-Dcatalina.base=${CATALINA_BASE} \
-Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dserver -XX:+UseNUMA \
-XX:+UseG1GC -Dfile.encoding=UTF-8 \
-Xms32G \
-Xmx32G \
-Djava.library.path=${CATALINA_BASE}/webapps/Thingworx/WEB-INF/extensions \
-cp ${CATALINA_HOME}/bin/commons-daemon.jar:${CATALINA_HOME}/bin/bootstrap.jar:${CATALINA_HOME}/bin/tomcat-juli.jar \
-user tomcat9.0 \
-java-home ${JAVA_HOME} \
-pidfile /var/run/tomcat.pid \
-errfile ${CATALINA_HOME}/logs/catalina.out \
-outfile ${CATALINA_HOME}/logs/catalina.out \
$CATALINA_OPTS \
org.apache.catalina.startup.Bootstrap
[Install]
WantedBy=multi-user.target
配置tomcat setenv
在Tomcat中创建一个新文件sr/share/tomcat9.0/9.0.xx/bin 文件名为setenv.sh,并添加以下内容到文件中
touch /data/tomcat9.0/9.0.48/bin/setenv.sh
vim /data/tomcat9.0/9.0.48/bin/setenv.sh
CATALINA_OPTS="$CATALINA_OPTS -Djava.library.path=/data/tomcat9.0/9.0.48/webapps/Thingworx/WEB-INF/extensions"
chown tomcat9.0:tomcat9.0 /data/tomcat9.0/9.0.48/bin/setenv.sh
chmod +x /data/tomcat9.0/9.0.48/bin/setenv.sh
设置 Tomcat开机自启动
systemctl daemon-reload
systemctl enable tomcat.service
配置tomat错误页面
在Tomcat安装位置,打开CATALINA_HOME/conf/web.xml替换默认错误页面(默认为stacktrace)。将以下内容放在web-app标签中(在welcome-file-list标签之后):
vim $CATALINA_HOME/conf/web.xml
<error-page><exception-type>java.lang.Throwable</exception-type><location>/error.jsp</location></error-page>
配置tomcat端口
在 Tomcat 安装位置,打开CATALINA_HOME/conf/server.xml。在<Host> </Host>标签中添加以下内容:
vim $CATALINA_HOME/conf/server.xml
端口:8888
<Valve className="org.apache.catalina.valves.ErrorReportValve" showReport="false" showServerInfo="false" />
注释JSP
在Tomcat安装位置,打开conf/server.xml,搜索下面一行。如果找到,将其注释掉并保存文件: < Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>