要查看Apache服务器的运行状态,可通过<Location>命令来实现。具体步骤如下:
1.在Apache的主配置文件/etc/httpd/conf/httpd.conf中找到以下内容:
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from .example.com
</Location>
将其前面的注释去掉(“#”),并修改成允许客户机192.168.1.4访问:
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from 192.168.1.4
</Location>
2.为了使服务器可以显示自己的运行状态,以便客户端随时掌控,需要将语句ExtendedStatus On前的注释去掉。
3.通过设置后,只有192.168.1.4这台主机才能访问Apache的服务器状态。
windows 2003 查看APACHE的运行状态
查看apache 80端口连接数,实时检测HTTPD连接数:
netstat -an | find /c ":80"
设置apache最大连接数
ThreadsPerChild 250 #最大的线程数
MaxRequestsPerChild 100 #请求的超时时间设置,0代表不限制,推荐
(MaxRequestsPerChild不能设置为0,可能会因内存泄露导致服务器崩溃)
开启Apache的server-status
找到apache下面的配置文件httpd.conf,查找
#LoadModule status_module modules/mod_status.so
修改成
LoadModule status_module modules/mod_status.so
ExtendedStatus On
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from IP
</Location>
ExtendedStatus On 获得一个完整的报告与当前状态信息
Allow from IP是指允许访问apache运行状态的IP
打开查看的话就使用http://IP/server-status来访问,如果需要自动更新,可以用
http://IP/server-status?refresh=N,N是更新时间,默认是秒。
server-status 的输出中每个字段所代表的意义如下:
字段 说明
Server Version Apache 服务器的版本。
Server Built Apache 服务器编译安装的时间。
Current Time 目前的系统时间。
Restart Time Apache 重新启动的时间。
Parent Server Generation Apache 父程序 (parent process) 的世代编号,就是 httpd 接收到 SIGHUP 而重新启动的次数。
Server uptime Apache 启动后到现在经过的时间。
Total accesses 到目前为此 Apache 接收的联机数量及传输的数据量。
CPU Usage 目前 CPU 的使用情形。
_SWSS…. 所有 Apache process 目前的状态。每一个字符表示一个程序,最多可以显示 256 个程序的状态。
Scoreboard Key 上述状态的说明。以下为每一个字符符号所表示的意义:
* _:等待连结中。
* S:启动中。
* R: 正在读取要求。
* W:正在送出回应。
* K:处于保持联机的状态。
* D:正在查找 DNS。
* C:正在关闭连结。
* L:正在写入记录文件。
* G:进入正常结束程序中。
* I:处理闲置。
* .:尚无此程序。
Srv 本程序与其父程序的世代编号。
PID 本程序的 process id。
Acc 分别表示本次联机、本程序所处理的存取次数。
M 该程序目前的状态。
CPU 该程序所耗用的 CPU 资源。
SS 距离上次处理要求的时间。
Req 最后一次处理要求所耗费的时间,以千分之一秒为单位。
Conn 本次联机所传送的数据量。
Child 由该子程序所传送的数据量。
Slot 由该 Slot 所传送的数据量。
Client 客户端的地址。
VHost 属于哪一个虚拟主机或本主机的 IP。
Request 联机所提出的要求信息。
不错吧,挺直观的吧。