Apache Tomcat是一个开源,轻量级,功能强大且广泛使用的Web服务器,由Apache Foundation开发和维护。 它是Java Servlet , JavaServer 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 。
要在RHEL 8上安装Java ,首先,使用以下dnf命令更新系统软件包并安装Java 8或Java 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
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)
一旦在系统上安装了JAVA ,现在是时候下载最新版本的Apache Tomcat (即9.0.24 )是撰写本文时最新的稳定版本。
如果您想验证版本,请访问官方Apache下载页面并检查是否有可供下载的较新版本。
或者,您可以使用以下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守护程序,您需要将其作为systemd (系统和服务管理器)下的服务运行。 该服务将使用名为tomcat的系统用户的权限运行,您需要使用useradd命令创建它。
# useradd -r tomcat
创建tomcat用户后,使用以下chown命令为Tomcat安装目录及其所有内容授予权限和所有权。
# chown -R tomcat:tomcat /usr/local/tomcat9 # ls -l /usr/local/tomcat9
接下来,使用您喜欢的文本编辑器在/ 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
Tomcat分别使用端口8080和8443进行HTTP和HTTPS请求。 您还可以通过使用netstat命令检查系统上所有监听端口之间的HTTP端口来确认守护程序已启动并正在监听。
# netstat -tlpn
如果运行firewalld服务 ,则必须先使用firewall-cmd命令打开端口8080和8443,然后再使用firewall-cmd命令 ,如图所示。
# firewall-cmd --zone=public --permanent --add-port=8080/tcp # firewall-cmd --zone=public --permanent --add-port=8443/tcp # firewall-cmd --reload
现在您已经安装,配置并启动了Tomcat作为服务,并允许通过防火墙向守护程序发出请求,您可以尝试使用URL访问Web界面来测试安装。
http://localhost:8080 OR http://SERVER_IP:8080
一旦看到屏幕截图中显示的页面,您就已经成功安装了Tomcat 。
Tomcat包括一个名为Manager的Web应用程序,用于从WAR文件的上载内容部署新的Web应用程序,部署新的Web应用程序,列出当前部署的Web应用程序以及当前为这些Web应用程序处于活动状态的会话等等。更多。
它还提供了一个Host Manager应用程序,用于管理(创建,删除等) Tomcat中的虚拟主机。
要确保在生产环境中对Manager和Host Manager应用程序的访问受限,您需要在/usr/local/tomcat9/conf/tomcat-users.xml配置文件中配置基本HTTP身份验证。
# vi /usr/local/tomcat9/conf/tomcat-users.xml
将以下配置复制并粘贴到<tomcat-users>
和</tomcat-users>
标记中,如屏幕截图所示。 此配置将admin-gui和manager-gui角色添加到名为“admin”且密码为“ [email protected] ”的用户 。
<role rolename="admin-gui,manager-gui"/> <user username="admin" password="[email protected]" roles="admin-gui,manager-gui"/>
保存文件中的更改并退出。
默认情况下,对Manager和Host 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 |。*”/>
然后保存文件中的更改并关闭它。
同样,如上所示,在文件/usr/local/tomcat9/webapps/host-manager/META-INF/context.xml中启用对Host Manager应用程序的远程访问。
接下来,重新启动tomcat服务以应用最近的更改。
# systemctl restart tomcat.service
要访问Tomcat Manager Web应用程序,您可以单击屏幕截图中显示的链接或使用URL。
http://localhost:8080/manager OR http://SERVER_IP:8080/manager
系统将要求您进行身份验证:输入您之前创建的用户名和密码,以登录管理器应用,如屏幕截图所示。
以下屏幕截图显示了Manager app HTML界面,您可以在其中从WAR文件的上载内容部署新的Web应用程序,部署新的Web应用程序或列出现有应用程序以及执行更多操作。
要访问Host Manager ,请转至以下任意URL。
http://localhost:8080/host-manager OR http://SERVER_IP:8080/host-manager
恭喜! 您已在RHEL 8服务器上成功安装并配置了Apache Tomcat 。 有关更多信息,请参阅Apache Tomcat 9.0文档 。
关注云架构公众号
Linux入门
QQ交流群:308781113