Apacheの動作情報を色々表示できるようにする

パフォーマンス検証等々、色々。

まず必要なmoduleを確認。

# httpd -M | grep -E '(status|info)'
 status_module (shared)
 info_module (shared)

有効になっていなければ、httpd.confでmoduleを読み込む。

LoadModule status_module libexec/apache24/mod_status.so
LoadModule info_module libexec/apache24/mod_info.so

VHOST未使用ならhttpd.confでextra/httpd-info.confをIncludeし、そちらで設定すれば済む。 ウチはVHOST運用なので、extra/httpd-vhost.confの適切なVirtualHostディレクリブ内で以下を記述する。

ExtendedStatus On

<VirtualHost *:443>
    <Location /server-status>
        SetHandler server-status
        Require local
    </Location>
    <Location /server-info>
        SetHandler server-info
        Require local
    </Location>
</VirtualHost>

ExtendedStatus Onは必須ではないが、設定しておくとserver-statusに表示される情報が少しだけ増える。 Server上のpath情報などが表示されるので、必ずRequireなどで適切にアクセス制限を行う必要がある。

あとはApacheを再起動して、http[s]://[YOUR DOMAIN]/server-statushttp[s]://[YOUR DOMAIN]/server-infoで情報が表示されることを確認したら完了。