Apacheの動作状況を確認する(mod_status)

広告

Apache では mod_status モジュールを有効にすることでブラウザから Apache のサーバの動作状況の確認を行うことができます。ここでは Apache の動作状況を確認できるようにする手順について解説します。

Apacheの動作状況を確認する

最初に mod_status モジュールを有効にします。 httpd.conf ファイルで mod_status と検索してください。

#LoadModule ssl_module modules/mod_ssl.so
#LoadModule status_module modules/mod_status.so
#LoadModule substitute_module modules/mod_substitute.so

先頭に # が記述されている場合はコメントとなっています。 # を削除してください。

#LoadModule ssl_module modules/mod_ssl.so
LoadModule status_module modules/mod_status.so
#LoadModule substitute_module modules/mod_substitute.so

これで mod_status モジュールが次回の Apache 起動時から有効となります。

次に mod_status モジュールの設定を行います。 設定は httpd.conf ファイルではなく httpd-info.conf ファイルで行います。デフォルトでは httpd.conf から httpd-info.conf を読み込んでいませんので、最初に読み込むように変更します。 httpd.conf ファイルで httpd-info.conf を検索してください。

# Real-time info on requests and configuration
#Include conf/extra/httpd-info.conf

先頭に # が記述されている場合はコメントとなっています。 # を削除してください。

# Real-time info on requests and configuration
Include conf/extra/httpd-info.conf

これで httpd.conf から httpd-info.conf ファイルを読み込むようになりました。( Include ディレクティブの使い方については「Includeディレクティブ:補助設定ファイルを読み込む」を参照されてください)。

それでは httpd-info.conf ファイルで設定を記述します。ファイルは conf ディレクトリの中の extra ディレクトリの中にあります。

Apacheの動作状況を確認する(1)

httpd-info.conf ファイルを開き、 Location ディレクティブを使って次のように記述します。

<Location /server-status>
SetHandler server-status

Require local
</Location>

ブラウザから /server-status へアクセスすると、 server-status ハンドラを使って Apache の活動状況をブラウザの画面に表示します。ローカルで Apache を起動している場合は関係ないですが、一般公開されているサーバの場合はアクセスを制限する必要があります。 Require ディレクティブを使って特定の IP アドレスやホストだけにアクセスを許可してください(上記ではローカルからのアクセスのみ許可しています)。

※ Require ディレクティブの設定方法については「Requireディレクティブ:アクセスの許可や拒否などのアクセス制限を行う」を参照されてください。

これで準備は完了です。それぞれの設定ファイルを保存したあと Apache を再起動してください。そのあとでブラウザから http://localhost/server-status へアクセスしてください。

Apacheの動作状況を確認する(2)

Apache の活動状況が表示されます。

自動更新とテキストでの表示

URL の末尾にオプションを指定することで、(1)自動更新の指定、(2)テキスト形式での表示、を行うことができます。

自動更新の指定

URL の末尾に refresh=N を指定することで、 N 秒毎に自動で画面がリフレッシュされます。それでは例として 10 秒単位で自動更新してみます。 http://localhost/server-status?refresh=10 へアクセスしてください。

自動更新とテキストでの表示(1)

自動更新とテキストでの表示(2)

指定した 10 秒毎に画面が最新の情報に更新されて表示されます。

テキスト形式での表示

URL の末尾に auto を指定することで、テキスト形式で Apache の活動状況を表示します。データを何らかのスクリプトで処理する場合には、こちらの形式でのデータを取得すると便利です。それでは http://localhost/server-status?auto へアクセスしてください。

自動更新とテキストでの表示(3)

HTML ファイルではなくテキストで活動状況が表示されました。

拡張ステータスを表示する(ExtendedStatusディレクティブ)

Apache の活動状況を表示するときに ExtendedStatus ディレクティブを on に設定しておくと、より詳細な情報を確認することができます。書式は次のとおりです。

ExtendedStatus On|Off

記述できる場所は httpd.conf です。

デフォルトの設定は On となっています。( httpd-info.conf ファイルにはコメントで The default is Off. と記述されていますが、実際に試したところではデフォルトで On になっているようでした)。

それでは Off にした場合を試してみます。次の設定を httpd-info.conf ファイルに追加してください。

<Location /server-status>
SetHandler server-status

Require local
</Location>

ExtendedStatus Off

httpd-info.conf ファイルを保存したあと Apache を再起動してください。そのあとで改めて http://localhost/server-status へアクセスしてください。

拡張ステータスを表示する(ExtendedStatusディレクティブ)(1)

いくつかの情報が表示されなくなりました。

-- --

Apacheの動作状況を確認できるようにする手順について解説しました。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。