各仮想サーバーは、1 つまたは複数の HTTP リスナーを通じてサーバーとクライアントの間の接続を提供します。各 HTTP リスナーは、IP アドレス、ポート番号、サーバー名、およびデフォルトの仮想サーバーを持つ待機ソケットです。
HTTP リスナーは、ポート番号と IP アドレスの一意の組み合わせを持つ必要があります。たとえば、HTTP リスナーは、IP アドレス 0.0.0.0 を指定することで、マシンの特定のポートに設定されているすべての IP アドレスを待機できます。これとは反対に、HTTP リスナーは同一ポートを使用する特定の一意の IP アドレスを各リスナーに指定することもできます。
HTTP リスナーは IP アドレスとポート番号の組み合わせです。このため、IP アドレスが同じでポート番号の異なる HTTP リスナーや (例: 1.1.1.1:8081 および 1.1.1.1:8082)、IP アドレスが異なっていてポート番号は同じ HTTP リスナー (例: 1.1.1.1:8081 および 1.2.3.4:8081。ただし、マシンがこれら両方のアドレスに応答するように設定されている場合) を使用することができます。
ただし、HTTP リスナーに単一のポート上ですべての IP アドレスを待機する 0.0.0.0 を使用する場合は、この同じポート上に、特定の IP アドレスを待機する IP アドレスを HTTP リスナーに作成できません。たとえば、HTTP リスナーが 0.0.0.0:8080 (ポート 8080 のすべての IP アドレスを待機) を使用する場合、別の HTTP リスナーが 1.2.3.4:8080 を使用することはできません。
通常、Application Server が稼動するシステムでアクセスできる IP アドレスは 1 つだけであるため、HTTP リスナーは、ポートが異なる 0.0.0.0 IP アドレスを通常使用し、役割ごとに異なるポート番号を使用します。システムが複数の IP アドレスにアクセスできる場合は、各アドレスを異なる役割に使用できます。
デフォルトでは、Application Server を起動すると、次の HTTP リスナーが準備されます。
server
という仮想サーバーに関連付けられた http-listener-1
および http-listener-2
という 2 つの HTTP リスナー。http-listener-1
ではセキュリティが無効になり、http-listener-2
ではセキュリティが有効になります。__asadmin
という仮想サーバーに関連付けられた admin-listener
という HTTP リスナー。
これらのリスナーはどれも IP アドレス 0.0.0.0 を使用します。また、Application Server のインストール時に指定された HTTP サーバーポート番号を使用します。Application Server がポート番号のデフォルト値をそのまま使用した場合、http-listener-1
はポート 8080、http-listener-2
はポート 8181、admin-listener
はポート 4848 を使用します。
各 HTTP リスナーはデフォルトの仮想サーバーを持ちます。デフォルトの仮想サーバーは、HTTP リスナーに関連するどの仮想サーバーともホストコンポーネントが一致しない、すべての要求 URL が HTTP リスナーによってルーティングされるサーバーです。仮想サーバーと HTTP リスナーの関連付けは、仮想サーバーの http-listeners
属性に HTTP リスナーを指定することで行われます。
さらに、HTTP リスナー内のアクセプタスレッドの数を指定します。アクセプタスレッドは、接続を待機するスレッドです。アクセプタスレッドによって受け入れられ、キューに入れられた接続はワーカースレッドによって取り出されます。新しい要求が着信したときにいつでも対応できるように、常に十分な数のアクセプタスレッドを設定しておきますが、システムに負荷がかかり過ぎない数に抑える必要もあります。Application Server では、アクセプタスレッドと要求処理 (ワーカー) スレッドが区別されません。つまり、各 HTTP リスナースレッドは、要求の受け入れと処理の両方を行います。このため、Application Server のデフォルト設定で、HTTP リスナーは 50 個のアクセプタスレッドを使用します。
HTTP リスナーのサーバー名は、サーバーがクライアントに送信する URL にリダイレクトの一部として表示されるホスト名です。この属性は、サーバーが自動的に生成する URL には影響しますが、サーバーに格納されているディレクトリやファイルの URL には影響しません。サーバーがエイリアスを使っている場合、普通、この名前はエイリアス名です。クライアントが Host:
ヘッダーを送信する場合、HTTP リスナーのサーバー名の代わりにホスト名がリダイレクトに指定されます。
リダイレクトポートを指定して、元の要求に指定されているポート番号とは異なるポート番号を使用します。リダイレクトは、次のいずれかの状況で行われます。
また、HTTP リスナーのセキュリティを有効にするかどうか、あるいは、どのセキュリティの種類を使用するか (例: SSL プロトコルや暗号化方式の種類) も指定します。
Application Server に配備された Web アプリケーションにアクセスするには、Web アプリケーション用に指定したコンテキストルートとともに、http://localhost:8080/
(セキュリティ保護されたアプリケーションでは https://localhost:8181/
) という URL を使用します。管理コンソールにアクセスするには、URL http://localhost:4848/
またはデフォルトのコンテキストルートである http://localhost:4848/asadmin/
を使用します。
仮想サーバーは既存の HTTP リスナーを指定する必要があり、ほかの仮想サーバーによってすでに使用されている HTTP リスナーを指定できないことから、新しい仮想サーバーを作成するときは、事前に 1 つの HTTP リスナーを作成します。
関連項目