如何在RHEL 8中安装Apache Tomcat

在本文中,我们将向您展示如何安装和配置Apache Tomcat 9,远程访问Web界面以在RHEL 8 Linux上部署Java应用程序。

Apache Tomcat是一个开源,轻量级,功能强大且广泛使用的Web服务器,由Apache Foundation开发和维护。 它是Java ServletJavaServer Pages(JSP)Java Expression Language(EL)Java WebSocket技术的实现,并提供了一个纯Java HTTP服务器来运行基于Java Web的应用程序。

本文将引导您完成Apache Tomcat 9的安装和配置,并远程访问RHEL 8 Linux上的Web界面。

如果您希望在RHEL / CentOS 7上安装Tomcat ,请按照本文在RHEL / CentOS 7上安装Apache Tomcat

第1步:在RHEL 8上安装Java

要在RHEL 8上安装Java ,首先,使用以下dnf命令更新系统软件包并安装Java 8Java 11的默认可用版本,如图所示。

# dnf update
# dnf install java-1.8.0-openjdk-devel  	#install JDK 8
OR
# dnf install java-11-openjdk-devel		#install JDK 11

安装完成后,您可以使用以下命令在系统上验证已安装的Java版本。

# java -version
样本输出
在RHEL 8中检查Java版本
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

第2步:在RHEL 8上安装Apache Tomcat

一旦在系统上安装了JAVA ,现在是时候下载最新版本的Apache Tomcat (即9.0.24 )是撰写本文时最新的稳定版本。

如果您想验证版本,请访问官方Apache下载页面并检查是否有可供下载的较新版本。

  1. https://tomcat.apache.org/download-90.cgi

或者,您可以使用以下wget命令下载最新版本的Apache Tomcat ,并如图所示进行设置。

# cd /usr/local
# wget http://www-us.apache.org/dist/tomcat/tomcat-9/v9.0.24/bin/apache-tomcat-9.0.24.tar.gz
# tar -xvf apache-tomcat-9.0.24.tar.gz
# mv apache-tomcat-9.0.24 tomcat9

注意 :如果有更新的Apache Tomcat版本,请确保使用最新版本替换上面的版本号。

Apache Tomcat服务器现在部署在/usr/local/tomcat9目录中,您可以通过运行pwd命令验证内容并列出目录内容

# pwd tomcat9/
# ls -l tomcat9/
检查Apache Tomcat文件

检查Apache Tomcat文件

以下是Apache Tomcat安装目录中每个子目录的描述。

  • bin - 包含可执行文件。
  • conf - 包含配置文件。
  • lib - 存储库文件。
  • log - 存储日志文件。
  • temp - 包含临时文件。
  • webaaps - 存储Web应用程序文件。

第3步:在RHEL 8中的Systemd下运行Apache Tomcat

要轻松管理Apache Tomcat守护程序,您需要将其作为systemd (系统和服务管理器)下的服务运行。 该服务将使用名为tomcat的系统用户的权限运行,您需要使用useradd命令创建它。

# useradd -r tomcat

创建tomcat用户后,使用以下chown命令为Tomcat安装目录及其所有内容授予权限和所有权。

# chown -R tomcat:tomcat /usr/local/tomcat9
# ls -l /usr/local/tomcat9
创建Apache Tomcat用户

创建Apache Tomcat用户

接下来,使用您喜欢的文本编辑器在/ etc / systemd / system /目录下创建一个tomcat.service单元文件。

# vi /etc/systemd/system/tomcat.service

将以下配置复制并粘贴到tomcat.service文件中。

[Unit]
Description=Apache Tomcat Server
After=syslog.target network.target

[Service]
Type=forking
User=tomcat
Group=tomcat

Environment=CATALINA_PID=/usr/local/tomcat9/temp/tomcat.pid
Environment=CATALINA_HOME=/usr/local/tomcat9
Environment=CATALINA_BASE=/usr/local/tomcat9

ExecStart=/usr/local/tomcat9/bin/catalina.sh start
ExecStop=/usr/local/tomcat9/bin/catalina.sh stop

RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target

保存文件重新加载systemd配置以使用以下命令应用最近的更改。

# systemctl daemon-reload

然后启动tomcat服务,使其在系统引导时自动启动,并使用以下命令检查状态。

# systemctl start tomcat.service
# systemctl enable tomcat.service
# systemctl status tomcat.service
在Systemd下运行Apache Tomcat

在Systemd下运行Apache Tomcat

Tomcat分别使用端口80808443进行HTTPHTTPS请求。 您还可以通过使用netstat命令检查系统上所有监听端口之间的HTTP端口来确认守护程序已启动并正在监听。

# netstat -tlpn
检查Apache Tomcat端口

检查Apache Tomcat端口

如果运行firewalld服务 ,则必须先使用firewall-cmd命令打开端口80808443,然后再使用firewall-cmd命令 ,如图所示。

# firewall-cmd --zone=public --permanent --add-port=8080/tcp
# firewall-cmd --zone=public --permanent --add-port=8443/tcp
# firewall-cmd --reload

第4步:访问Apache Tomcat Web界面

现在您已经安装,配置并启动了Tomcat作为服务,并允许通过防火墙向守护程序发出请求,您可以尝试使用URL访问Web界面来测试安装。

http://localhost:8080
OR
http://SERVER_IP:8080

一旦看到屏幕截图中显示的页面,您就已经成功安装了Tomcat

Apache Tomcat仪表板

Apache Tomcat仪表板

Tomcat包括一个名为Manager的Web应用程序,用于从WAR文件的上载内容部署新的Web应用程序,部署新的Web应用程序,列出当前部署的Web应用程序以及当前为这些Web应用程序处于活动状态的会话等等。更多。

它还提供了一个Host Manager应用程序,用于管理(创建,删除等) Tomcat中的虚拟主机。

第5步:为Tomcat Manager和Host Manager启用HTTP身份验证

要确保在生产环境中对ManagerHost Manager应用程序的访问受限,您需要在/usr/local/tomcat9/conf/tomcat-users.xml配置文件中配置基本HTTP身份验证。

# vi /usr/local/tomcat9/conf/tomcat-users.xml

将以下配置复制并粘贴到<tomcat-users></tomcat-users>标记中,如屏幕截图所示。 此配置将admin-guimanager-gui角色添加到名为“admin”且密码为[email protected] ”的用户

<role rolename="admin-gui,manager-gui"/> 
<user username="admin" password="[email protected]" roles="admin-gui,manager-gui"/>
配置Tomcat HTTP身份验证

配置Tomcat HTTP身份验证

保存文件中的更改并退出。

第6步:启用对Tomcat Manager和Host Manager的远程访问

默认情况下,对ManagerHost Manager应用程序的访问仅限于localhost ,即安装和运行Tomcat的服务器。 但您可以启用对特定IP地址或网络(例如LAN)的远程访问。

要启用对Manager应用程序的远程访问,请打开并编辑配置文件/opt/apache-tomcat-9.0.24/webapps/host-manager/META-INF/context.xml

# vi /usr/local/tomcat9/webapps/manager/META-INF/context.xml

然后查找以下行。

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

将其更改为允许从IP地址192.168.56.10进行tomcat访问。

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |192.168.56.10" />

您还可以允许从本地网络192.168.56.0进行tomcat访问。

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |192.168.56.*" />

或允许从任何主机或网络访问tomcat。
allow =“127 \。\ d + \。\ d + \。\ d + | :: 1 | 0:0:0:0:0:0:0:1 |。*”/>

从IP启用Tomcat访问

从IP启用Tomcat访问

然后保存文件中的更改并关闭它。

同样,如上所示,在文件/usr/local/tomcat9/webapps/host-manager/META-INF/context.xml中启用对Host Manager应用程序的远程访问。

接下来,重新启动tomcat服务以应用最近的更改。

# systemctl restart tomcat.service

第7步:访问Tomcat Manager Web Apps

要访问Tomcat Manager Web应用程序,您可以单击屏幕截图中显示的链接或使用URL。

http://localhost:8080/manager
OR
http://SERVER_IP:8080/manager
Apache Tomcat仪表板

Apache Tomcat仪表板

系统将要求您进行身份验证:输入您之前创建的用户名和密码,以登录管理器应用,如屏幕截图所示。

Apache Tomcat管理员登录

Apache Tomcat管理员登录

以下屏幕截图显示了Manager app HTML界面,您可以在其中从WAR文件的上载内容部署新的Web应用程序,部署新的Web应用程序或列出现有应用程序以及执行更多操作。

Tomcat Web应用程序管理器

Tomcat Web应用程序管理器

第8步:访问Tomcat Host Manager Web应用程序

要访问Host Manager ,请转至以下任意URL。

http://localhost:8080/host-manager
OR
http://SERVER_IP:8080/host-manager
Tomcat虚拟主机管理器

Tomcat虚拟主机管理器

恭喜! 您已在RHEL 8服务器上成功安装并配置了Apache Tomcat 有关更多信息,请参阅Apache Tomcat 9.0文档