网站搜索

如何在 Ubuntu 中使用 mod_status 监控 Apache 性能


虽然您始终可以查看 Apache 日志文件以获取有关 Web 服务器的信息(例如活动连接),但您可以通过启用 mod_status 模块来获得有关 Web 服务器性能的非常详细的概述。

mod_status 模块是什么?

mod_status 模块是一个 Apache 模块,允许用户在纯 HTML 页面上访问有关 Apache 性能的非常详细的信息。事实上,Apache 维护着自己的服务器状态页面以供公众查看。

您可以通过访问以下地址查看 Apache (Ubuntu) 的状态:

  • https://apache.org/server-status

Apache mod_status 可以提供包含以下信息的纯 HTML 页面:

  • 服务器版本
  • 当前日期和时间 (UTC)
  • 服务器正常运行时间
  • 服务器负载
  • 总流量
  • 传入请求总数
  • 网络服务器的 CPU 使用率
  • 各个客户端的 PID 等等。

现在让我们换个话题,看看如何获取有关 Apache Web 服务器的最新统计信息。

测试环境

Operating System: 	Ubuntu 20.04
Application:            Apache HTTP server
Version:                2.4.41
IP address:             34.123.9.111
Document root:          /var/www/html

在 Apache Ubuntu 中启用 mod_status

默认情况下,Apache 附带已启用的 mod_status 模块。您可以通过运行 ls 命令检查 mods_enabled 目录来验证这一点,如下所示:

ls /etc/apache2/mods-enabled

确保 status.confstatus.load 文件存在。如果没有,您需要通过调用以下命令来启用 mod_status 模块:

sudo /usr/sbin/a2enmod status

在 Apache Ubuntu 中配置 mod_status

如前所述,mod_status 已启用。但是,您需要进行额外的调整才能访问服务器状态页面。为此,您需要修改 status.conf 文件。

sudo vim /etc/apache2/mods-enabled/status.conf 

设置 Require ip 指令以反映您将从中访问服务器的计算机的 IP 地址。

保存更改并重新启动 Apache 以使更改生效以确认状态,如下所示:

sudo systemctl restart apache2

然后验证 Apache 的状态并确保其正常运行。

sudo systemctl status apache2

此后,浏览 Web 服务器的 URL,如图所示。

http://server-ip/server-status

您将获得一个状态 HTML 页面,其中显示大量 Apache 信息和一组统计信息,如图所示。

注意:要在每个给定时间间隔(例如 5 秒)后刷新页面,请在以下位置附加 “?refresh=5 ”网址的末尾。

http://server-ip/server-status?refresh=5

与之前的纯静态 HTML 页面相比,这提供了更好的服务器性能监控能力。

这就是关于 mod_status 模块的全部内容。请继续关注 Howtoing,了解更多信息。