【发布时间】:2019-06-12 08:01:24
【问题描述】:
Apache“mod_status”:
我们知道,通过使用“mod_status”,我们可以检查 Apache 的当前状态。它返回了很多信息,类似于这个示例页面 (由 Apache 提供):
我需要做什么:
我需要解析然后处理这个结果,尤其是ExtendedStatus标志给出的详细连接部分(在httpd.conf中)。该部分类似于:
Srv PID Acc M CPU SS Req Conn Child Slot Client VHost Request
0-24 23433 0/94/338163 _ 208.04 2 0 0.0 1.85 22068.75 221.254.46.37
0-24 23433 0/99/337929 _ 208.93 1 1141 0.0 2.23 19373.00 197.89.161.5
0-24 23433 0/94/337834 _ 206.04 4 0 0.0 3.46 22065.36 114.31.251.82
0-24 23433 0/95/338139 _ 198.94 2 7 0.0 2.74 21101.66 122.252.253.242
0-24 23433 0/111/338215 _ 206.21 3 0 0.0 3.89 19496.71 186.5.109.211
我的问题:
是否可以通过结构化数据格式(如 JSON)获取此页面(信息)? (因为我需要通过 PHP 解析它们。然后再做一些进一步的事情。)
我不能只使用一些简单的方法,比如 Javascript DOM Parsers(比如:jQuery)。因为我需要脚本在服务器的 Linux 命令行(本地)本身中运行。不是通过任何来自外部的花哨的客户端浏览器。
因此,通过 Javascript(JQuery 等)解析它几乎不是一种选择。我最好接收结构化数据。所以我可以很容易地从 PHP 中解析。通过终端触发 PHP 脚本,如:
# php /www/docroots/parse-server-status.php
或者,至少:
# curl -I http://localhost/parse-server-status.php
问题:
- 知道如何从 Apache 的服务器状态 (mod_status) 中获取 JSON 或 XML 吗?
谢谢大家。
【问题讨论】:
-
简洁的
?autoURL arg 返回一个相当容易解析的纯文本摘要。试试看:curl localhost:80/server-status?auto