我一直在寻找如何正确启用mod_status并且没有任何工作。我的服务器名为“willserver.main.ca”。我在Windows虚拟机上运行服务器。 我尝试将其添加到HTTPD配置文件中:
<location /server-status>
SetHandler server-status
Order Deny,Allow
Deny from all
Allow from main.ca
</location>
任何提示或帮助?我不知道我是否应该取消注释,或者我只是一遍又一遍地尝试错误的语法
答案 0 :(得分:12)
好的,首先确认您的LoadModule
看起来与此类似:
LoadModule status_module modules/mod_status.so
如果不存在,那么您需要下载并添加它。
如果有,那就试试这个:
<Location /server-status>
SetHandler server-status
Order allow,deny
Allow from all
</Location>
看看你是否可以点击http://www.my-domain.com/server-status
如果可以将其切换为:
<Location /server-status>
SetHandler server-status
Order allow,deny
Deny from all
Allow from 192.168.1.100
</Location>
如果您在内部或外部IP访问时,192.168.1.100
是您的内部IP。这将限制它,因此不只是任何人都可以访问它。然后,您可以为需要访问的每个IP / IP范围添加多个Allow from
。
答案 1 :(得分:5)
Apache 2.4似乎不喜欢Order指令中的空格。
订单允许,拒绝仅作为
订单允许,拒绝
答案 2 :(得分:3)
mod_status内置于Apache Web服务器中,以从Web浏览器获取服务器状态。使用此模块,我们可以轻松了解服务器的性能。所有报告都以html格式生成。
步骤1。检查状态模块是否已启用 apache2ctl -M或ls / etc / apache2 / sites-enabled
第二步。如果未启用,请通过命令
启用它sudo a2enmod status
步骤3。配置访问权限,
打开/etc/apache2/mods-enabled/status.conf并注释这些行,
#<Location /server-status>
# SetHandler server-status
# Require local
#Require ip 192.0.2.0/24
#</Location>
并添加以下行
<Location /server-status>
SetHandler server-status
Order deny,allow
Allow from all
</Location>
我们可以通过编辑来限制此配置中特定IP的服务器状态访问, 允许来自our_public_ipaddress而不是所有
中的Allow保存status.conf文件。
步骤4。通过命令
重启apache/etc/init.d/apache2 restart
步骤5。检查浏览器中的服务器状态页面
http://server-ip/server-status
希望这会有所帮助。
答案 3 :(得分:1)
在Mac OS X Yosemite中我不得不使用这个,否则会发生一些无限循环:
<IfModule mod_status.c>
# Allow server status reports generated by mod_status,
# with the URL of http://servername/server-status
# Change the ".example.com" to match your domain to enable.
#
<Location /server-status>
SetHandler server-status
Order deny,allow
Allow from all
</Location>
</IfModule>
取自https://osiutino.wordpress.com/2014/06/12/install-apache-2-4-9-on-mac-osx-10-9-mavericks/
答案 4 :(得分:1)
我开发了一个javascript应用程序来显示图表中的数据 https://github.com/dioubernardo/apacheServerStatusCharts
答案 5 :(得分:0)