Apache が使用するアドレスとポートの設定をします。
Apache は起動時に、ローカルマシンのあるポートおよびアドレス に対して接続し、リクエストが来るのを待ちます。 デフォルトではマシンのすべてのアドレスに対して listen します。 しかしながら、特定のポートか、特定のアドレスのみか、 またはそれらの組み合わせのいずれかを listen するようにする必要があります。 これは、異なる IP アドレス、ホスト名、ポートに対する Apache の応答方法を決定するバーチャルホスト機能と組み合わせて使われます。
たとえば、ポート 80 と 8000 の両方に対しての接続を受け付けるには
とします。 二つの指定されたインタフェースとポート番号に対しての接続を受け付けるには、
とします。 IPv6 アドレスは、角括弧で次の例のように囲まなければいけません。
多くのプラットホームで IPv6 がサポートされてきていて、
IPv6 ソケットが IPv4 と IPv6 コネクションの両方を扱うことができるか
どうかは、Apache 管理者にとって厄介な問題です。
IPv4 コネクションを IPv6 ソケットで扱う場合は、
IPv4 マップされた IPv6 アドレスを使用していて、
ほとんどのプラットホームではデフォルトで使用可能ですが、
FreeBSD, NetBSD, OpenBSD では、システム全体としてのポリシーとの整合性から、
デフォルトでは使用不可に設定されています。
これらのデフォルトで使用不可のプラットホームであっても、
特別な
一方で、Linux や Tru64 といったプラットホームで IPv4 と IPv6
の両方を扱うには、マップトアドレスを使用する以外の方法はありません。
IPv4 と IPv6 のコネクションを最小限のソケットで扱いたいのであれば、
IPv4 マップの IPv6 アドレスを使用する必要があり、
--enable-v4-mapped
--enable-v4-mapped
は、
FreeBSD, NetBSD, OpenBSD 以外の全てのプラットホームでのデフォルトです。
ですから、おそらくお手元の Apache はこの設定でビルドされているでしょう。
プラットフォームや APR が何をサポートするかに関わらず、
IPv4 コネクションのみを扱うようにしたい場合は、
次の例のように全ての
条件を満たすプラットホームで、Apache が
IPv4 と IPv6 のコネクションを個別のソケットで扱うようにしたい場合
(つまり IPv4 マップのアドレスを無効にしたい場合)
は、--disable-v4-mapped
--disable-v4-mapped
は、
FreeBSD, NetBSD, OpenBSD プラットホームでのデフォルトです。