如何在 Debian 10 上安装 Apache Tomcat 10如何在 Debian 10 上安装 Apache Tomcat 10如何在 Debian 10 上安装 Apache Tomcat 10如何在 Debian 10 上安装 Apache Tomcat 10
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

如何在 Debian 10 上安装 Apache Tomcat 10

发表 admin at 2025年2月28日
类别
  • 未分类
标签
月額480円〜の高速レンタルサーバー ColorfulBox

在此页

  1. 先决条件
  2. 开始
  3. 安装Java
  4. 安装 Apache Tomcat
  5. 创建 Tomcat Web 管理员用户
  6. 允许远程访问 Tomcat
  7. 为 Tomcat 创建一个系统单元文件
  8. 为 Tomcat 配置 Nginx
  9. 访问 Tomcat 应用程序
  10. 结论

Apache Tomcat 是开源的,是最流行的用于托管基于 Java 的应用程序的 Web 应用程序服务器。它带有 Java Servlet、JavaServer Pages (JSP)、Java EL,并提供运行 Java 代码的环境。 Tomcat 提供了一组丰富的功能,包括轻量级、高度灵活、文档齐全、提供额外级别的安全性、成熟等等。

在本教程中,我们将解释如何在 Debian 10 服务器上安装 Apache Tomcat 10。

先决条件

  • 运行 Debian 10 的服务器。
  • 用您的服务器 IP 指向的有效域名。
  • 在服务器上配置了根密码。

入门

在开始之前,使用以下命令将系统包更新到最新版本:

apt-get update -y

更新所有包后,您可以继续下一步。

安装Java

Apache Tomcat 是一个基于 Java 的应用程序。所以你需要在你的服务器上安装 Java。您可以使用以下命令安装 Java:

apt-get install default-jdk -y

安装后,使用以下命令验证 Java 版本:

java --version

以下输出将向您显示服务器上安装的 Java 版本。

openjdk 11.0.11 2021-04-20
OpenJDK Runtime Environment (build 11.0.11+9-post-Debian-1deb10u1)
OpenJDK 64-Bit Server VM (build 11.0.11+9-post-Debian-1deb10u1, mixed mode, sharing)

完成后,您可以继续下一步。

安装 Apache Tomcat

在编写本教程时,Apache Tomcat 的最新可用版本是 10.0.7。

首先,使用以下命令添加用户以运行 Apache Tomcat:

useradd -m -d /opt/tomcat -U -s /bin/false tomcat

接下来,使用以下命令下载 Apache Tomcat 10:

wget https://mirrors.estointernet.in/apache/tomcat/tomcat-10/v10.0.7/bin/apache-tomcat-10.0.7.tar.gz

下载完成后,使用以下命令将下载的文件解压缩到 /opt/tomcat 目录:

tar -xzvf apache-tomcat-10.0.7.tar.gz -C /opt/tomcat --strip-components=1

接下来,使用以下命令为 /opt/tomcat 目录设置适当的所有权:

chown -R tomcat:tomcat /opt/tomcat/

完成后,您可以继续下一步。

创建 Tomcat Web 管理员用户

接下来,您需要创建一个管理员用户来访问 Tomcat 管理界面。您可以通过编辑 tomcat-users.xml 文件来创建它:

nano /opt/tomcat/conf/tomcat-users.xml

在最后一行之前添加以下行:

<role rolename="manager-gui" />
<user username="manager" password="pasword" roles="manager-gui" />

<role rolename="admin-gui" />
<user username="admin" password="password" roles="manager-gui,admin-gui" />

完成后保存并关闭文件。您现在可以继续下一步。

允许远程访问 Tomcat

默认情况下,Tomcat 被配置为只能从本地系统访问。因此,您需要配置 Tomcat,以便可以从远程系统访问它。

首先,编辑 context.xml 文件以允许远程访问 Tomcat 管理器应用程序:

nano /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" />

保存并关闭文件,然后编辑 context.xml 文件以允许远程访问 Tomcat 主机管理器应用程序:

nano /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" />

完成后保存并关闭文件。您现在可以继续下一步。

为 Tomcat 创建系统单元文件

接下来,您需要创建一个 systemd 单元文件来管理 Tomcat 服务。您可以使用以下命令创建它:

nano /etc/systemd/system/tomcat.service

添加以下行:

[Unit]
Description=Tomcat
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

[Install]
WantedBy=multi-user.target

保存并关闭文件,然后重新加载 systemd 守护进程以应用更改:

systemctl daemon-reload

接下来,启动 Tomcat 服务并使用以下命令使其在系统重启时启动:

systemctl start tomcat
systemctl enable tomcat

您现在可以使用以下命令检查 Tomcat 服务的状态:

systemctl status tomcat

您应该得到以下输出:

? tomcat.service - Tomcat
   Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled)
   Active: active (running) since Thu 2021-07-01 04:58:39 UTC; 15s ago
  Process: 5706 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
 Main PID: 5713 (java)
    Tasks: 29 (limit: 2359)
   Memory: 154.7M
   CGroup: /system.slice/tomcat.service
           ??5713 /usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Djava.ut

Jul 01 04:58:39 tomcat systemd[1]: Starting Tomcat...
Jul 01 04:58:39 tomcat startup.sh[5706]: Tomcat started.
Jul 01 04:58:39 tomcat systemd[1]: Started Tomcat.

此时Tomcat已经启动并监听8080端口,可以通过以下命令查看:

ss -antpl | grep 8080

您应该得到以下输出:

LISTEN   0        100                          *:8080                  *:*       users:(("java",pid=5713,fd=43))

完成后,您可以继续下一步。

为 Tomcat 配置 Nginx

接下来推荐使用Nginx作为反向代理来访问Tomcat应用。

首先,使用以下命令安装 Nginx Web 服务器:

apt-get install nginx -y

安装 Nginx 后,创建一个新的 Nginx 虚拟主机配置文件:

nano /etc/nginx/conf.d/tomcat.conf

添加以下行:

server {
  listen 80;

  server_name    tomcat.example.com;
  access_log /var/log/nginx/access.log;
  error_log /var/log/nginx/error.log;

  location / {
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:8080/;
  }
}

完成后保存并关闭文件,然后使用以下命令验证 Nginx 是否存在任何语法错误:

nginx -t

您应该得到以下输出:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

接下来,重新启动 Nginx 以应用更改:

systemctl restart nginx

您还可以使用以下命令检查 Nginx 服务的状态:

systemctl status nginx

如果一切正常,您应该会看到以下输出:

? nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2021-07-01 05:00:32 UTC; 6s ago
     Docs: man:nginx(8)
  Process: 6322 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
  Process: 6323 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
 Main PID: 6324 (nginx)
    Tasks: 2 (limit: 2359)
   Memory: 2.7M
   CGroup: /system.slice/nginx.service
           ??6324 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           ??6325 nginx: worker process

Jul 01 05:00:32 tomcat systemd[1]: Starting A high performance web server and a reverse proxy server...
Jul 01 05:00:32 tomcat systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
Jul 01 05:00:32 tomcat systemd[1]: Started A high performance web server and a reverse proxy server.

完成后,您可以继续下一步。

访问 Tomcat 应用程序

现在,打开 Web 浏览器并使用 URL http://tomcat.example.com 访问 Tomcat 应用程序。您将被重定向到以下页面:

单击“管理应用程序”。您应该会看到 Manager App 登录页面:

提供您的管理员用户名和密码,然后单击“登录”按钮。您应该会在以下页面上看到 Manager App 仪表板:

要访问主机管理器,请从 Tomcat 主页单击主机管理器。您应该看到 Tomcat 主机管理器登录页面:

提供您的管理员用户名和密码,然后单击“登录”按钮。您应该在以下页面上看到 Tomcat 主机管理器仪表板:

结论

恭喜!您已在 Debian 10 服务器上成功安装 Apache Tomcat 10。您现在可以创建 Java 应用程序并使用 Apache Tomcat 托管它。如果您有任何问题,请随时问我。

©2015-2025 Norria support@alaica.com