apache默认不启用server-status页面,需启用mod_status模块、配置location访问规则(2.4+用require all granted)、可选开启extendedstatus,并重启服务后通过/server-status访问。
apache 安装后默认不启用 server-status 页面,需要手动配置模块加载、状态参数和访问权限三部分。核心是确保 mod_status 模块已启用,并正确设置访问控制,否则会提示 “forbidden you don't have permission to access this resource.”
确认并启用 mod_status 模块
打开 Apache 主配置文件(如 /usr/local/apache2/conf/httpd.conf 或 /etc/apache2/apache2.conf),查找以下行:
- 若存在
#LoadModule status_module modules/mod_status.so,去掉开头的#取消注释; - 若整行缺失,在
LoadModule区域末尾添加:LoadModule status_module modules/mod_status.so; - Debian/Ubuntu 系统可直接运行:
sudo a2enmod status,然后重启服务。
添加 server-status 访问配置
在配置文件末尾或 conf/extra/httpd-info.conf 中加入以下任一写法(注意 Apache 版本差异):
- Apache 2.2 或兼容旧语法(含 Order/Allow):
<location><br> SetHandler server-status<br> Order Allow,Deny<br> Allow from all<br></location>
- Apache 2.4+ 推荐写法(更安全):
<location><br> SetHandler server-status<br> Require all granted<br></location>
- 如需限制仅本地或特定 IP 访问,把
Require all granted换成:Require local(仅本机) 或Require ip 192.168.1.0/24(指定网段)。
开启详细状态信息(可选但推荐)
在配置中任意位置(通常紧邻 Location 块上方)添加一行:
Apache Superset 是一个广泛采用的开源 BI 平台,用于 SQL 探索、图表构建和仪表板交付。当代理需要查询仓库数据、组装仪表板或使用成熟的分析界面解释指标而不是临时笔记本代码时,此技能非常有用。
ExtendedStatus On
该指令启用后,/server-status?auto 和页面顶部表格将显示每个请求的完整方法、URL、状态码、响应大小、处理时长等,便于性能分析。注意:它只能在全局配置中设置,不能放在 <virtualhost></virtualhost> 内;且会轻微增加服务器开销。
验证与访问
保存配置后重启 Apache:
- Linux 通用:
sudo apachectl restart或sudo systemctl restart apache2; - Windows:
httpd -k restart(确保以管理员权限运行)。
浏览器访问:http://your-server-ip/server-status
常用参数:
-
?refresh=2—— 每 2 秒自动刷新; -
?auto—— 返回纯文本格式,适合脚本采集或监控系统读取; -
?refresh=5&auto—— 组合使用(注意 URL 中 & 转义)。










