Apacheの状況をServerStatusとServerInfoから見る

今回はApacheの動作や設定値の状態を見る方法を。
Apacheには現在の動作状況や、httpd.confの設定状況を見る手段が用意されています。
今回はそれらを有効にする方法を簡単にまとめます。

Apacheの動作状況を見る


mod_statusを有効にします。

ソースファイルからApacheをインストールする場合は、
標準でmod_statusが組み込まれます。

RPMパッケージなら以下の設定が入っていることを確認します。

 LoadModule status_module modules/mod_status.so

そして以下のようなディレクティブを設定してApacheを起動します。
アクセス制御の設定を必ず有効にすることを推奨します。

標準のものからアドレス変えたければLocationディレクティブの設定を変えればOK

<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from [閲覧を許可するネットワーク]
</Location>

http://xxx.xxx.xxx.xxx/server-status にアクセスすると、
サーバーの稼働状況が表示されます。


「ExtendedStatus On」とすると、表示される情報が追加されます(デフォルトOFF)


クエリを使って表示内容の制御もできます。

    ステータスファイルの機械読み取り可能なバージョンを得ます。

    Nで指定した秒数の感覚で画面を自動更新します。


参考:Apache HTTPサーバーマニュアル(mod_status)

Apacheの設定状況を見る


mod_infoを有効にします。


ソースファイルからApacheをインストールする場合は、
コンパイル時に以下のようにmod_infoを静的に指定して組み込んでおくか、
mod.soを組み込んだ上で、LoadModuleしてください。

 ./configure --enable-info
 LoadModule info_module modules/mod_info.so


こちらもmod_status同様に以下のようなディレクティブを設定してApacheを起動します。
アクセス制御の設定を必ず有効にすることを推奨します。

<Location /server-info>
    SetHandler server-info
    Order deny,allow
    Deny from all
    Allow from [閲覧を許可するネットワーク]
</Location>

http://xxx.xxx.xxx.xxx/server-info にアクセスすると、
サーバーの設定状況が表示されます。


標準のものからアドレス変えたければLocationディレクティブの設定を変えればOK

こちらもクエリを使って表示内容を制御できます。

    指定されたモジュールに関連する情報のみ

    モジュールでソートせずに、設定ディレクティブのみ

   各モジュールが使用するフックのみ

    有効なモジュールの簡単なリストのみ

   基本サーバ情報のみ


参考:Apache HTTPサーバーマニュアル(mod_info)

今日はこんなところで。