CentOS8上安装Tomcat9

Posted lnboxue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS8上安装Tomcat9相关的知识,希望对你有一定的参考价值。

1、如何选择tomcat版本

技术图片

2、找到对应版本的tomcat9

注意:安装Tomcat之前一定要先安装好JDK

下载Tomcat地址:https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/

选择版本后,进入bin目录

里面有名为 apache-tomcat-XXXX.tar.gz 的文件,右键复制地址

技术图片

技术图片

技术图片

3、下载

wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz

4、将下载的文件移动到安装目录

mv apache-tomcat-9.0.35.tar.gz /opt/tomcat9

5、解压

tar -zxvf tomcat9

技术图片

6、常用的目录和命令

目录及作用
/opt/apache-tomcat-9.0.35/bin/startup.sh          启动tomcat
/opt/apache-tomcat-9.0.35/bin/shutdown.sh      关闭tomcat
/opt/apache-tomcat-9.0.35/conf/                      配置
/opt/apache-tomcat-9.0.35/logs/                      日志
/opt/apache-tomcat-9.0.35/webapps/                默认应用目录

命令及作用

启动

方式一:直接启动 ./startup.sh
方式二:作为服务启动 nohup ./startup.sh &

解释:

通过方式一启动的tomcat有个弊端,当客户端连接断开的时候,tomcat服务也会立即停止,

通过方式二可以作为linux服务一直运行

关闭

方式一:./shutdown.sh

7、启动Tomcat

进入到apache-tomcat-9.0.35/bin目录下

./startup.sh

技术图片

成功访问

技术图片

 

8、相关配置(可不配置或选择配置)

8.1、配置Tomcat环境

打开文件 /etc 目录下的 profile 文件:
vim /etc/profile
将如下代码追加到 profile 文件末尾:
# idea - tomcat9 config start - 2020-05-25
CATALINA_HOME=/opt/apache-tomcat-9.0.35
CATALINA_BASE=/opt/apache-tomcat-9.0.35
PATH=$PATH:$CATALINA_BASE/bin
export PATH CATALINA_BASE
# idea - tomcat9 config end - 2020-05-25
保持并推出:wq!

8.2、修改 tomcat 的端口号和字符编码

进入到 /opt/apache-tomcat-9.0.35/conf 目录中:
cd ../opt/apache-tomcat-9.0.35/conf
打开 tomcat 服务的配置文件 server.xml:
vi server.xml
找到如下代码:
将其中的 8080 改成 HTTP 协议的默认端口 80

8.3、增加 manager-gui 图形化管理界面的访问权限

打开 tomcat 的用户配置文件 tomcat-users.xml:
vi tomcat-users.xml
在 标签前加入如下代码:
这里设置的 username 和 password 都是 password,角色为 manager-gui;
键入 Esc 并输入“:wq!”保持并退出;

8.4、将 tomcat9 加入到系统服务列表中

进入到 /etc/init.d 目录中:
cd /etc/init.d
创建 tomcat9 服务配置文件:
vi tomcat9
将如下代码加入写入到 tomcat9 配置文件中:
# idea - tomcat config start - 2016-05-01
#!/bin/bash
# description: Tomcat Start Stop Restart
# processname: tomcat
# chkconfig: 2345 20 80
JAVA_HOME=/opt/apache-tomcat-9.0.35/
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
CATALINA_HOME=/opt/apache-tomcat-9.0.35/
case $1 in
start)
sh $CATALINA_HOME/bin/startup.sh
;;
stop)
sh $CATALINA_HOME/bin/shutdown.sh
;;
restart)
sh $CATALINA_HOME/bin/shutdown.sh
sh $CATALINA_HOME/bin/startup.sh
;;
esac
exit 0
#chmod 755 tomcat
#chkconfig --add tomcat
#chkconfig --level 2345 tomcat on
#chkconfig --list tomcat
# idea - tomcat config end - 2016-05-01
键入 Esc 并输入“:wq!”保持并退出;
其中的注意点是将 JAVA_HOME 和 CATALINA_HOME 变量设置成与我们当前配置相一致的路径;

8.5、为 tomcat9 分配可执行权限

chmod +x tomcat9

8.6、 将 tomcat9 纳入到系统的服务列表中,即添加 tomcat9 为系统服务

chkconfig --add tomcat9

8.7、 查看当前系统服务都有哪些

chkconfig --list
也可以查看指定的系统服务,如这里我们指定 tomcat9 这个服务:
chkconfig --list tomcat9
打印如下信息:
tomcat9 0:off 1:off 2:on 3:on 4:on 5:on 6:off
则表明已将 tomcat9 设置为系统服务,2、3、4、5 都为 on 表示可随系统自动启动;

9、注意

不可连续执行多次 ./shutdown.sh 命令,多次后报如下错误:
SEVERE: Catalina.stop:
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at java.net.Socket.connect(Socket.java:538)
at java.net.Socket.(Socket.java:434)
at java.net.Socket.(Socket.java:211)
at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:476)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:408)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:497)

以上是关于CentOS8上安装Tomcat9的主要内容,如果未能解决你的问题,请参考以下文章

Centos8安装配置Tomcat9.0

centos8安装并启动tomcat9

Centos8安装tomcat9以及常见用法

Centos8安装tomcat9以及常见用法

如何在CentOS上安装tomcat9

在CentOS7上安装Tomcat9的方法教程