步骤 2. 安装 Tomcat 9
转到官方 Apache Tomcat 网站并将最新版本的软件下载到服务器。
目前最新版本是 9.0.34 版,这里
# VERSION=9.0.34 # wget https://www-eu.apache.org/dist/tomcat/tomcat-9/v${VERSION}/bin/apache-tomcat-${VERSION}.tar.gz
使用以下命令解压下载的 Apache Tomcat 存档:
# tar -xzvf apache-tomcat-${VERSION}.tar.gz -C /opt
让我们将目录重命名为如下简单的名称:
# cd /opt # mv apache-tomcat-${VERSION}/* tomcat
不建议以root用户运行Apache Tomcat,因此我们将创建一个新的系统用户来运行Apache Tomcat服务器
# groupadd tomcat # useradd -g tomcat -d /opt/tomcat -s /bin/nologin tomcat useradd: warning: the home directory already exists. Not copying any file from skel directory into it.
创建 Apache Tomcat 用户后,让我们更改所有 Apache Tomcat 文件的所有权,如下所示:
# chown -R tomcat:tomcat /opt/tomcat/
运行以下命令以列出可用的 Java 版本和系统上的位置
# update-java-alternatives -l java-1.8.0-openjdk-amd64 1081 /usr/lib/jvm/java-1.8.0-openjdk-amd64
使用以下内容创建一个 systemd 文件:
# vi /etc/systemd/system/tomcat.service [Unit] Description=Apache Tomcat 9.x Wants=network.target After=network.target [Service] Type=forking Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64 Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid Environment=CATALINA_HOME=/opt/tomcat Environment='CATALINA_OPTS=-Xms512M -Xmx1G -Djava.net.preferIPv4Stack=true' Environment='JAVA_OPTS=-Djava.awt.headless=true' ExecStart=/opt/tomcat/bin/startup.sh ExecStop=/opt/tomcat/bin/shutdown.sh SuccessExitStatus=143 User=tomcat Group=tomcat UMask=0007 RestartSec=10 Restart=always [Install] WantedBy=multi-user.target
现在,我们可以使用以下命令启动 Apache Tomcat 9 服务器并使其在引导时启动:
# systemctl daemon-reload # systemctl enable tomcat Created symlink from /etc/systemd/system/multi-user.target.wants/tomcat.service to /etc/systemd/system/tomcat.service. # systemctl start tomcat
Apache Tomcat 默认监听 8080 端口,在访问 Apache Tomcat 服务器之前,我们需要调整防火墙以允许我们的请求到达服务。
使用以下命令:
# sudo ufw allow 8080
我们现在应该能够在我们喜欢的 Web 浏览器中访问 Apache Tomcat 服务器。
打开浏览器并导航到 http://IP_address:8080,我们将看到 Apache Tomcat 的主页如下。
步骤 3. 配置 Apache Tomcat Web 管理界面
默认情况下,我们无法访问 Apache Tomcat Web 管理界面,因为我们还没有创建用户。
Apache Tomcat 用户及其角色在 tomcat-users.xml 文件中定义。
打开 tomcat-users.xml 文件并添加以下几行:
# vi /opt/tomcat/conf/tomcat-users.xml <tomcat-users> <!- Comments --> <role rolename="admin-gui"/> <role rolename="manager-gui"/> <user username="admin" password="PASSWORD_CHANGE_ME" roles="admin-gui,manager-gui"/> </tomcat-users>
默认情况下,Apache Tomcat Web 管理界面配置为仅允许从 localhost 访问。
如果我们希望能够从远程 IP 或者从不推荐的任何地方访问 Web 界面,因为它存在安全风险,我们可以打开以下文件并进行以下更改。
在此配置中,我们将允许来自子网 192.168.1.* 的任何 IP 访问 Apache Tomcat Web 管理界面。
# vi /opt/tomcat/webapps/manager/META-INF/context.xml <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.1.*" /> # vi /opt/tomcat/webapps/host-manager/META-INF/context.xml <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.1.*" />
最后重新启动 Apache Tomcat 服务器守护进程:
#systemctl restart tomcat
Apache Tomcat 是一个 Web 服务器和 servlet 容器,用于为 Java 应用程序提供服务。
Apache Tomcat 是 Java Servlet 和 JavaServer Pages 技术的开源实现,由 Apache Software Foundation 发布。
步骤 1. 安装 Java 8
Apache Tomcat 9 需要在服务器上安装 Java 8 或者更新版本。
Java 8 包在默认的 Ubuntu 18.04 LTS 和 16.04 LTS 存储库中可用。
运行以下命令安装 Java 8
# apt install -y openjdk-8-jdk
安装完成后,我们可以使用以下命令检查安装的版本:
# java -version openjdk version "1.8.0_181" OpenJDK Runtime Environment (build 1.8.0_181-8u181-b13-0ubuntu0.18.04.1-b13) OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)