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的主要内容,如果未能解决你的问题,请参考以下文章