[APACHE DOCUMENTATION]

Apache HTTP Server Version 1.3

Is this the version you want? For more recent versions, check our documentation index.

Apache が使用するアドレスとポートの設定


Apache は起動時に、ローカルなマシンのあるポートおよびアドレス に対して接続し、リクエストが来るのを待ちます。 デフォルトでは、マシン上のすべてのアドレス、およびサーバ設定ファイルの Port ディレクティブで設定されたポートに対して listen します。 しかし、複数のポートを listen する、指定されたアドレスに限って listen する、あるいはそれらを組み合わせて設定することも可能です。 これは、異なる IP アドレス、ホスト名、ポートに対する Apache の応答方法を決定するバーチャルホスト機能と組み合わせて使われます。

Apache が listen するアドレスおよびポートを限定するために使われる ディレクティブが二つあります。

BindAddress

構文: BindAddress [ * | IP アドレス | ホスト名 ]
デフォルト:BindAddress *
コンテキスト:サーバ設定ファイル
ステータス:コア

サーバを、特定のアドレスだけにバインドします。 引数が * (アスタリスク) の場合は、現在サーバ上で有効なすべての インタフェースにバインドします。ポートは Port ディレクティブでの設定が使われます。BindAddress は一つだけ使えます。

Listen

構文:Listen [ポート | IP アドレス:ポート ]
デフォルト: none
コンテキスト:サーバ設定ファイル
ステータス:コア

Listen ディレクティブは BindAddress および Port ディレクティブの代わりとして使うこともできます。 これにより特定のポートまたはアドレスとポートの組合わせに対しての リクエストをサーバが受け付ける (listen する) ようにします。 ポート番号だけの、最初の書式を使った場合、Port ディレクティブで設定されたポートではなくサーバ上で有効なすべての インタフェースに対して、ここで設定されたポートを listen します。 ポートと共に IP アドレスを指定した場合は、指定されたポートと インタフェースに対して listen します。

複数の Listen ディレクティブにより、listen するアドレスとポートを いくつも指定することも出来ます。 リストされたアドレスとポートすべてに対して応答します。

たとえば、ポート 80 と 8000 の両方に対しての接続を受け付けるには

   Listen 80
   Listen 8000
とします。 二つの指定されたインタフェースとポート番号に対しての接続を受け付けるには
   Listen 192.170.2.1:80
   Listen 192.170.2.5:8000
とします。

バーチャルホストに対してどう働くのか

BindAddressListen はバーチャルホストを行なう わけではありません。それらはメインの Apache デーモンプロセスがどのアドレス をバインドし、どのポートを listen するのかということを指定します。 <VirtualHost> ディレクティブが全く使われない場合は、受け付けたリクエストすべてに対して 同じ動作をします。しかし、<VirtualHost> を使って一つあるいは複数の アドレスおよびポートに対して異なる動作をさせることも出来ます。 バーチャルホストを行なうには、サーバには次のことが必要です。 サーバで listen していないアドレスおよびポートを <VirtualHost> で指定した場合、アクセスできないことに注意してください。

関連項目

バーチャルホストBindAddress ディレクティブPort ディレクティブDNS の問題、および<VirtualHost> セクションの文書も参照してください。

Apache HTTP Server

Index アダルトレンタルサーバー