Calendar
数据载入中,请稍候......
Placard
数据载入中,请稍候......
Category
数据载入中,请稍候......
Latest Entries
数据载入中,请稍候......
Latest Comments
数据载入中,请稍候......
Last Messages
数据载入中,请稍候......
User Login
数据载入中,请稍候......
Links
Information
数据载入中,请稍候......
Search
Other


Welcome to my blog!
  Apache 服务器状态与管理
 

身为系统管理者,必须时常查看系统状态,检查、注意主机是否有异常的情形发生。Apache 提供了详细的系统记录文件,我们可以经由这些档案了解服务器、网页是否有异常的情形。另外,Apache 也提供了一些工具,可以让我们了解服务器的运作情形。

13.5.1 Apache 状态信息

在安装完 Apache 后,如果您所管理的是一个大型的网页服务器,您一定会需要了解服务器的系统负荷是否足以处理庞大的网络流量。Apache 内建了 server-status 及 server-info 二种观看服务器信息的方法。

server-status 服务器状态信息

server-status 可以让我们了解 Apache 目前运作的情形,包括占用的系统资源、目前联机数量等。在使用 server-status 之前,我们必须先修改 httpd.conf,以打开此功能。

...
LoadModule status_module libexec/apache2/mod_status.so
...
#
# ExtendedStatus controls whether Apache will generate "full" status
# information (ExtendedStatus On) or just basic information (ExtendedStatus
# Off) when the "server-status" handler is called. The default is Off.
#
ExtendedStatus On
...
#
# 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
    Deny from all
    Allow from 192.168.0.
</Location>
...

首先要确认的是 Apache 有载入 mod_status.so 这个模块,接着我们将 ExtendedStatus 设为 On,以显示详细的服务器状态。最后是找到 server-status 的区段,并移除开头的 #。在 server-status 区段中,我们设定了 Deny、Allow,以限制只有从某个地方联机进来的使用者可以查看服务器状态。在上述的范例中,我们限制只有从 192.168.0.x 的使用者才可以看到 server-status。

修改完 httpd.conf 后,我们必须使用下列指令重新启动 Apache:

# /usr/local/etc/rc.d/apache2.sh restart

接下来,我们就可以使用浏览器连到 http://192.168.0.1/server-status。请将 192.168.0.1 改成您的主机 IP。连到 server-status 后,您可以看到下列画面:

图 13-2

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 联机所提出的要求信息。

我们在查看 server-status 时,可以在输入的网址中加上参数 refresh 来让网页自动更新。例如,您可以输入 http://192.168.0.1/server-status?refresh=5,让网页每 5 秒钟自动重新加载。

[ 阅读全文 | 回复(0) | 引用通告 | 编辑

  Post  by  badboy 发表于 2007-11-3 23:25:00
发表评论:
数据载入中,请稍候......
数据载入中,请稍候......