Apache HTTP サーバ バージョン 2.4

Apache > HTTP サーバ > ドキュメンテーション > バージョン 2.4 > モジュール

# Apache モジュール mod_info

この日本語訳はすでに古くなっている 可能性があります。 最近更新された内容を見るには英語版をご覧下さい。

説明: | サーバの設定の包括的な概観を提供する
ステータス: | Extension
モジュール識別子: | info_module
ソースファイル: | mod_info.c

### 概要

`mod_info` を設定するには、以下を `httpd.conf` ファイルに加えます。

`<Location /server-info>
SetHandler server-info
</Location>`

`<Location>` の中で `mod_access` を使って、サーバ設定情報への アクセスを制限したいと思うかもしれません :

`<Location /server-info>
SetHandler server-info
Order deny,allow
Deny from all
Allow from yourcompany.com
</Location>`

一旦設定すると、`http://your.host.example.com/server-info` にアクセスすることでサーバの情報を得られるようになります。

### トピック

- Security Issues
- 表示される情報の選択
- 既知の制限

### ディレクティブ

### Bugfix checklist

- httpd changelog
- Known issues
- Report a bug

## Security Issues

一旦 `mod_info` がサーバに読み込まれると、 提供しているハンドラ機能はディレクトリ毎の設定ファイル (例えば .htaccess) を含む すべての設定ファイルで有効になります。 このモジュールを有効にするときはセキュリティの問題を考慮する必要が あるでしょう。

特に、このモジュールはシステムパス、ユーザ名/パスワード、 データベース名など、他の Apache モジュールの設定ディレクティブから セキュリティ上微妙な情報を漏らす可能性があります。 ですから、このモジュールはきちんとアクセス制御された環境でのみ、 注意して使ってください。

設定情報へのアクセスを制限するために、`mod_authz_host` を 使うのが良いでしょう。

### アクセス制御

`<Location /server-info>
SetHandler server-info
Order allow,deny
# Allow access from server itself
Allow from 127.0.0.1
# Additionally, allow access from local workstation
Allow from 192.168.1.17
</Location>`

## 表示される情報の選択

デフォルトでは、サーバ情報はすべての有効なモジュールと、 各モジュールについて、モジュールが理解するディレクティブ、 実装している、フック、現時点での設定の関連するディレクティブに なっています。

`server-info` リクエストへクエリーを追加することで、 設定情報の他の表示形式を選ぶことができます。例えば、 `http://your.host.example.com/server-info?config` は すべての設定ディレクティブを表示します。

`?<module-name>`
  指定されたモジュールに関連する情報のみ
`?config`
  モジュールでソートせずに、設定ディレクティブのみ
`?hooks`
  各モジュールが使用するフックのみ
`?list`
  有効なモジュールの簡単なリストのみ
`?server`
  基本サーバ情報のみ

## 既知の制限

`mod_info` は、元の設定ファイルを読むのではなく、 既にパースされた設定を読み込むことで情報を提供します。従って、 パース済みの設定情報の木が生成される方法による制限がいくつかあります:

- パースされた設定に保存されずに、すぐに実行されるディレクティブは 一覧に現れません。これには `ServerRoot`, `LoadModule`, `LoadFile` があります。
- `Include`, `<IfModule>`, `<IfDefine>`, のような設定ファイル自身を制御するディレクティブは表示されません。 そのディレクティブの中にあり、有効になっているディレクティブは 表示されます。
- コメントは表示されません。(これは仕様だと思ってください。)
- `.htaccess` ファイルの設定ディレクティブは表示されません (永久的なサーバ設定の一部ではないからです)。
- `<Directory>` のようなコンテナディレクティブは普通に表示されますが、 `mod_info` は閉じタグの `</Directory>` などの数を知ることはできません。
- `mod_perl` のようなサードパーティモジュール のディレクティブは表示されないかもしれません。

## AddModuleInfo ディレクティブ

説明: | server-info ハンドラにより表示されるモジュールの情報に 追加の情報を付け加える
構文: | `AddModuleInfo module-name string`
コンテキスト: | サーバ設定ファイル, バーチャルホスト
ステータス: | Extension
モジュール: | mod_info
互換性: | Apache 1.3 以降

これは、string の内容がモジュール module-name の追加情報 として HTML として解釈され、表示されるようにします。例:

`AddModuleInfo mod_deflate.c 'See <a \
href="http://www.apache.org/docs/2.4/mod/mod_deflate.html">\
http://www.apache.org/docs/2.4/mod/mod_deflate.html</a>'`