ナビゲーションをスキップ

Web サーバ プラグインの使用

  前 次 前/次ボタンと目次ボタンとの区切り線 目次  

Web サーバ プラグインのパラメータ

以下の節では、Apache、Netscape、および Microsoft IIS の Web サーバ プラグインをコンフィグレーションするために使用するパラメータを説明します。

 


Web サーバ プラグインのコンフィグレーション ファイルでのパラメータの入力

各 Web サーバ プラグインのパラメータは、特殊なコンフィグレーション ファイルに入力します。このコンフィグレーション ファイルは各 Web サーバで別々の名前を持ち、ファイルの形式にはそれぞれの規則があります。詳細については、各プラグインの以下の節を参照してください。

 


Web サーバ プラグインの一般的なパラメータ

注意 : パラメータでは大文字/小文字を区別します。

表 7-1

パラメータ

デフォルト値

説明

WebLogicHost

(単一の WebLogic Server にプロキシする場合は必須)

なし

HTTP リクエストの転送先となる WebLogic Server ホスト (または、WebLogic Server で定義した仮想ホスト名)。

WebLogic クラスタを使用している場合は、WebLogicHost の代わりに WebLogicCluster パラメータを使用する。

WebLogicPort

(単一の WebLogic Server にプロキシする場合は必須)

なし

WebLogic Server ホストがプラグイン (または他のサーバ) からの接続リクエストをリスンするポート (プラグインと WebLogic Server の間で SSL を使用する場合は、このパラメータを SSL リスン ポートに設定して (「SSL のコンフィグレーション」を参照)、SecureProxy パラメータを ON に設定する)。

WebLogic クラスタを使用している場合は、WebLogicPort の代わりに WebLogicCluster パラメータを使用する。

WebLogicCluster

(WebLogic Server のクラスタにプロキシする場合は必須)

なし

ロード バランシング用に使用できる WebLogic Server の一覧。サーバまたはクラスタのリストは、「ホスト : ポート」という形式のエントリのリスト。クラスタと単一のサーバが混在している場合、このパラメータに対して返される動的リストではクラスタ化されたサーバのみが返される。

パラメータの指定方法と必要な形式はプラグインによって異なる。以下の例を参照。

プラグインと WebLogic Server の間で SSL を使用する場合は、ポート番号を SSL リスン ポートに設定して (「SSL のコンフィグレーション」を参照)、SecureProxy パラメータを ON に設定する。

プラグインは、使用可能なサーバ間で単純なラウンドロビンを行う。このプロパティで指定するサーバ リストは、サーバおよびプラグインが保持する動的サーバ リストの最初の状態。新しく追加されたり、障害が発生したり、障害から回復したクラスタ メンバーがあると、WebLogic Server とプラグインは連携して自動的にサーバ リストを更新する。

動的クラスタ リストを無効化するには、DynamicServerList パラメータを OFF に設定する。

プラグインは、クッキーの含まれている HTTP リクエスト、URL エンコーディングされたセッションの含まれている HTTP リクエスト、または POST データにセッションを格納している HTTP リクエストをそのクッキーを元々作成したクラスタ内のサーバに転送する。

PathTrim

null

リクエストが WebLogic Server に転送される前に、元の URL の先頭からプラグインによって取り除かれる文字列。次に例を示す。

http://myWeb.server.com/weblogic/foo

この URL が解析用にプラグインに渡され、その URL が WebLogic Server に渡される前に PathTrim/weblogic を取り除くように設定されている場合、WebLogic Server に転送される URL は次のようになる。

http://myWeb.server.com:7001/foo

既存のサードパーティ サーバを変換して、プラグインを使用している WebLogic Server にリクエストをプロキシする場合、アプリケーション パスを /foo から weblogic/foo を含むようにに変更する必要がある。PathTrim および PathPrepend を組み合わせて使用すると、このパスを変更できる。

PathPrepend

null

PathTrim の値が取り除かれた後、リクエストが WebLogic Server に転送される前に、元の URL の先頭にプラグインによって付加される文字列。

ConnectTimeoutSecs

10

プラグインが WebLogic Server ホストへの接続を試行する最大時間 (秒)。この値は ConnectRetrySecs より大きくする。接続できないまま、何回か再試行 (ConnectRetrySecs の項を参照) しても成功せず、ConnectTimeoutSecs の設定時間が切れた場合は、「HTTP 503/Service Unavailable」の応答がクライアントに返される。

エラー応答は ErrorPage パラメータを使用してカスタマイズできる。

ConnectRetrySecs

2

WebLogic Server ホスト (またはクラスタ内のすべてのサーバ) への接続試行の間にプラグインがスリープする間隔 (秒)。この値は ConnectTimeoutSecs より小さくする。HTTP 503/Service Unavailable 応答がクライアントに返されるまでにプラグインが接続を試行する回数は、ConnectTimeoutSecsConnectRetrySecs で除算することで算出される。

再試行しないようにするには、ConnectRetrySecsConnectTimeoutSecs と同じ値に設定する。ただし、プラグインは最低 2 回、接続を試みる。

エラー応答は ErrorPage パラメータを使用してカスタマイズできる。

Debug

OFF

デバッグで実行されるロギングの種類を設定する。デバッグ情報は、UNIX システムでは /tmp/wlproxy.log ファイル、Windows NT または 2000 システムでは c:\TEMP\wlproxy.log ファイルに書き込まれる。この位置とファイル名は、WLLogFile パラメータを別のディレクトリおよびファイルに設定することでオーバーライドする。サーバにログインしたユーザに必ず tmp または TEMP ディレクトリで書き込みパーミッションが割り当てられているようにする。以下のロギング オプションのいずれかを設定する (HFC、HTW、HFW、および HTC オプションは、カンマ区切りで「HFC,HTW」というように組み合わせて設定できる)。

ON

情報メッセージとエラー メッセージのログが作成される。

OFF

デバッグ情報のログは作成されない。

HFC

クライアントのヘッダ、情報メッセージ、およびエラー メッセージのログが作成される。

HTW

WebLogic Server に送信されるヘッダ、情報メッセージ、およびエラー メッセージのログが作成される。

HFW

WebLogic Server から送信されるヘッダ、情報メッセージ、およびエラー メッセージのログが作成される。

HTC

クライアントに送信されるヘッダ、情報メッセージ、およびエラー メッセージのログが作成される。

ERR

プラグインのエラー メッセージのみを出力する。

ALL

クライアントとの間で送受信されるヘッダ、WebLogic Server との間で送受信されるヘッダ、情報メッセージ、およびエラー メッセージのログが作成される。

WLLogFile

Debug パラメータを参照。

Debug パラメータが ON に設定されている場合に生成されるログ ファイルのパスとファイル名を指定する。このディレクトリはこのパラメータの設定前に作成する必要がある。

WLDNSRefreshInterval

0 (起動時に 1 回だけルックアップ)

NSAPI および Apache にのみ適用される。

プロキシ コンフィグレーションで定義する場合、WebLogic Server がサーバの DNS 名から IP へのマッピングを更新する間隔を秒単位で指定する。WebLogic Server インスタンスを別の IP アドレスに移行する場合に使用できるが、そのサーバの IP の DNS 名は変更されない。この場合、指定した間隔で DNS と IP のマッピングが更新される。

WLTempDir

Debug パラメータを参照。

wlproxy.log を作成するディレクトリを指定する。ディレクトリが見つからない場合、Windows の場合は C:/temp に、あらゆる Unix プラットフォームの場合は /tmp にログ ファイルが作成される。

ポスト データ ファイル用の _wl_proxy ディレクトリの場所も指定する。

WLTempDir および WLLogFile の両方が設定されている場合、wlproxy.log の場所に関して WLLogFile が優先する。ただし、WLTempDir_wl_proxy ディレクトリの場所を特定する。

DebugConfigInfo

OFF

特殊なクエリ パラメータ「__WebLogicBridgeConfig」を有効にする。このパラメータは、プラグインからコンフィグレーション パラメータに関する詳細を取得するのに使用する。

たとえば、DebugConfigInfo を設定して「__WebLogicBridgeConfig」を有効にし、クエリ文字列 ?__WebLogicBridgeConfig を含むリクエストを送信すると、コンフィグレーション情報と実行時統計が収集され、その情報がブラウザに返される。この場合、プラグインは WebLogic Server に接続しない。

このパラメータはデバッグにのみ使用するもので、出力メッセージの形式はリリースによって異なる。セキュリティ上の理由から、プロダクション システムではこのパラメータを OFF にしておくことが望ましい。

StatPath

(Microsoft Internet Information Server プラグインでは利用できない)

false

true に設定した場合、プラグインでは、リクエストを WebLogic Server に転送する前に、リクエストの変換されたパス (Proxy-Path-Translated) の有無とパーミッションがチェックされる。

ファイルが存在しない場合、「HTTP 404 File Not Found」の応答がクライアントに返される。ファイルが存在するものの読み取れない場合は、「HTTP 403/Forbidden」の応答がクライアントに返される。どちらの場合も、Web サーバのデフォルトのメカニズムがこれらの応答を処理する。このオプションは、WebLogic Server Web アプリケーションのドキュメント ルートと Web サーバのドキュメント ルートが同じ場合に役立つ。

エラー応答は ErrorPage パラメータを使用してカスタマイズできる。

ErrorPage

なし

Web サーバがリクエストを WebLogic Server に転送できなかった場合に表示されるユーザ独自のエラー ページを作成できる。

WLSocketTimeoutSecs

2 (0 より大きな値)

接続中のソケットのタイムアウトを秒単位で設定する。

WLIOTimeoutSecs (HungServerRecoverSecs の新しい名称)

300

WebLogic Server のリクエストへの応答に対するプラグインの待ち時間を定義する。プラグインは、サーバが応答するまで HungServerRecoverSecs で指定した秒数だけ待ってから、サーバの応答なしを宣言して、次のサーバにフェイルオーバする。この値は、大きな値にしておく必要がある。サーブレットの処理時間より短くした場合は、予期しない結果が発生する場合がある。

最小値 : 10
最大値 : 無制限

Idempotent

ON

ON に設定されている状態で、サーバが WLIOTimeoutSecs (HungServerRecoverSecs の新しい名称) の時間内に応答しない場合、プラグインはフェイルオーバする。

OFF に設定した場合、プラグインはフェイルオーバしない。Netscape Enterprise Server プラグインまたは Apache HTTP サーバを使用している場合は、さまざまな URL または MIME タイプに対してこのパラメータを別々に設定できる。

CookieName

JSESSIONID

WebLogic Server Web アプリケーションの WebLogic Server セッション クッキー名を変更する場合、プラグインの CookieName パラメータを同じ値に変更する必要がある。WebLogic セッション クッキー名は、WebLogic 固有のデプロイメント記述子の <session-descriptor> 要素で設定される。

DefaultFileName

なし

URI が「/」の場合、プラグインは以下の手順を実行する。

    1. PathTrim パラメータで指定されたパスを取り除く。

    2. DefaultFileName の値を付加する。

    3. PathPrepend で指定された値を先頭に追加する。

これによって、WebLogic Server からリダイレクトされなくなる。

DefaultFileName は、リクエストがプロキシされる WebLogic Server の Web アプリケーションのデフォルト ウェルカム ページに設定する。たとえば、DefaultFileNamewelcome.html に設定した場合、HTTP リクエストが「http://somehost/weblogic」であれば、「http://somehost/weblogic/welcome.html」になる。このパラメータが機能するためには、リクエストが転送される全 Web アプリケーションで同じウェルカム ファイルを指定する必要がある。詳細については、「Configuring Welcome Pages」を参照してください。

Apache を使用する場合の注意 : Stronghold バージョンまたは Raven バージョンを使用する場合は、IfModule ブロックではなく Location ブロックでこのパラメータを定義する。

MaxPostSize

-1

POST データの最大許容サイズ (バイト単位)。コンテキスト長が MaxPostSize を超えた場合、プラグインによってエラー メッセージが返される。-1 に設定した場合、POST データのサイズはチェックされない。これは、POST データを使用してサーバを過負荷状態にしようとするサービス拒否攻撃を防ぐのに役立つ。

MatchExpression

(Apache HTTP サーバのみ)

なし

MIME タイプによるプロキシを行う場合、MatchExpression パラメータを使用して IfModule ブロック内にファイル名のパターンを設定する。

MIME タイプでプロキシする場合の例を次に示す。

<IfModule mod_weblogic.c>
MatchExpression *.jsp    WebLogicHost=myHost|paramName=value
</IfModule>

パスでプロキシする場合の例を次に示す。

<IfModule mod_weblogic.c>
MatchExpression /weblogic    WebLogicHost=myHost|paramName=value
</IfModule>

次の構文を使用して、MatchExpression の新しいパラメータを定義することもできる。

MatchExpression *.jsp PathPrepend=/test PathTrim=/foo

FileCaching

ON

ON に設定されている状態で、リクエストの POST データのサイズが 2048 バイトより大きい場合、POST データはまずディスク上の一時ファイルに読み込まれ、次に 8192 バイト単位で WebLogic Server に転送される。これにより、フェイルオーバの間も POST データが保持され、プライマリがダウンしても、必要なすべてのデータをセカンダリに複写することが可能になる。

FileCaching が ON になっていると、データが WebServer と WebLogic の間でまだ転送中であっても、POST の進行状況を追跡するクライアントは転送が完了したものと認識してしまう。したがって、アップロード時にブラウザに進行状況バーを表示して、WebLogic Server で実際にデータが使用可能になったタイミングを示したい場合は、FileCaching を ON にしないことも検討すること。

OFF に設定されている状態で、リクエストの POST データのサイズが 2048 バイトより大きい場合、リクエストを処理する WebLogic Server クラスタ メンバーが特定されるまで POST データの読み込みが延期される。その後、プラグインが POST データを読み込み、ただちに 8192 バイト単位で WebLogic Server に送信する。

FileCaching を OFF にするとフェイルオーバが制限される。リクエストの処理中に WebLogic Server プライマリ サーバがダウンした場合、すでにプライマリに送信された POST データはセカンダリに複写できない。

なお、POST データのサイズが 2048 バイト以下の場合は、FileCaching の設定に関係なくプラグインがデータをメモリに読み込み、フェイルオーバ時にセカンダリへの複写が必要であればこれを使用する。

FilterPriorityLevel

(Microsoft Internet Information Server のみ)

2

このパラメータの値は、0 (低)、1 (中)、および 2 (高)。デフォルト値は 2。この優先順位は、iisforward.ini ファイルに置かれる必要がある。この優先順位を使用して、IIS の iisforward.dll フィルタの優先レベルが設定される。受信リクエストが複数のフィルタに一致する場合に、IIS は優先レベルに従って、最初に呼び出すフィルタを判別する。

WLExcludePathOrMimeType

なし

このパラメータを使用すると、特定のリクエストをプロキシ処理から除外できる。

このパラメータは、Location タグ レベルでローカルに定義することも、グローバルに定義することもできる。このプロパティをローカルに定義した場合、グローバルなプロパティはオーバーライドされず、2 つのパラメータが両方とも定義される。

WlForwardPath

(Microsoft Internet Information Server のみ)

null

WlForwardPath が「/」に設定されている場合は、すべてのリクエストがプロキシされる。特定の文字列で始まるリクエストを転送するには、WlForwardPath をその文字列に設定する。たとえば、WlForwardPath/weblogic に設定すると、/weblogic で始まるすべてのリクエストが Weblogic Server に転送される。

このパラメータは、パスでプロキシを実行する場合に必要。カンマで文字列を区切れば、複数の文字列を設定できる。たとえば WlForwardPath=/weblogic,/bea のように設定する。

KeepAliveSecs

(Apache HTTP サーバ バージョン 1.3.x には適用されない)

20

プラグインと WebLogic Server の間のアクティブではない接続が閉じられるまでの時間。このパラメータを有効にするには、KeepAliveEnabledtrue (Apache プラグインを使用している場合は ON) に設定する必要がある。

このパラメータの値は、Administration Console の [サーバ|HTTP] タブで設定される [持続時間] フィールドの値、または KeepAliveSecs 属性を使用して server MBean で設定される値以下でなければならない。

KeepAliveEnabled

(Apache HTTP サーバ バージョン 1.3.x には適用されない)

true (Netscape および Microsoft IIS プラグイン)

ON (Apache プラグイン)

プラグインと WebLogic Server の間の接続のプールを有効化する。

Netscape および Microsoft IIS プラグインの有効な値は、true および false

Apache プラグインの有効な値は、ON および OFF

QueryFromRequest

(Apache HTTP サーバのみ)

OFF

ON に設定されている場合、Apache プラグインは
(request_rec *)r->the request
を使用して WebLogic Server にクエリ文字列を渡す (詳細については Apache のマニュアルを参照)。この動作は以下の状況において望ましい。

  • Netscape バージョン 4.x ブラウザがクエリ文字列にスペースのあるリクエストを行う場合

  • HP で Raven Apache 1.5.2 を使用する場合

OFF に設定されている場合、Apache プラグインは
(request_rec *)r->args を使用して WebLogic Server にクエリ文字列を渡す。

MaxSkipTime


10

WebLogicCluster パラメータまたは WebLogic Server から返される動的クラスタ リストにある WebLogic Server で障害が発生した場合、その障害の発生したサーバは「bad」とマークされ、プラグインはリスト内の次のサーバに接続しようとする。

MaxSkips には、プラグインが「bad」とマークされたサーバへの接続を再試行するまでの時間を設定する。プラグインは、ユニークなリクエスト (クッキーのないリクエスト) を受信するたびにリスト内の新しいサーバに接続しようとする。

DynamicServerList

ON

OFF に設定すると、プラグインからプロキシされるリクエストをロード バランシングするために使用される動的クラスタ リストが無視され、WebLogicCluster パラメータで指定された静的リストのみが使用される。通常、このパラメータは ON のままにする。

このパラメータを OFF に設定する場合は、以下のことを考慮する必要がある。

  • 静的リストの 1 つまたは複数のサーバで障害が発生した場合、プラグインは応答不能のサーバへの接続に時間を費やし、その結果としてパフォーマンスが低下する可能性がある。

  • クラスタに新しいサーバを追加した場合は、このパラメータを再定義するまでプラグインはその新しいサーバにリクエストをプロキシできない。WebLogic Server は、新しいサーバがクラスタに追加されたときに動的サーバ リストにその新しいサーバを自動的に追加する。

WLProxySSL

OFF

次の条件に一致する場合に、プラグインと WebLogic Server 間の SSL 通信を維持する場合は、このパラメータを ON に設定する。

  • HTTP クライアント リクエストが HTTPS プロトコルを指定している。

  • リクエストが 1 つまたは複数のプロキシ サーバ (WebLogic Server プロキシ プラグインを含む) を経由して渡された。

  • プラグインと WebLogic Server 間の接続で HTTP プロトコルを使用している。

WLProxySSLON に設定すると、WebLogic Server からクライアントに返されるロケーション ヘッダでは HTTPS プロトコルが指定される。

WLLocalIP

なし

プラグインがマルチホーム マシンで動作している WebLogic Server インスタンスに接続する場合のバインド先の IP アドレスを定義する。

WLLocalIP を設定しない場合、マルチホーム マシンで任意の IP アドレスが使用される。

 


Web サーバ プラグインの SSL パラメータ

注意 : SCG 証明書は、WebLogic Server プロキシ プラグインで使用できません。SCG 以外の証明書は適切に機能し、その場合は WebLogic Server とプラグインの間で SSL 通信を行えます。

注意 : パラメータでは大文字/小文字を区別します。

表 7-2

パラメータ

デフォルト値

説明

EnforceBasicConstraints

Strong

このパラメータは、無効な V3 CA 証明書が含まれている証明書チェーンが拒否されないという、SSL 証明書検証に関して存在していたセキュリティ ホールをふさぐ。このセキュリティ ホールのため、有効な CA 証明書をルートとし、無効な中間 CA 証明書を含む証明書チェーンが信頼性を持つことができた。X509 V3 CA 証明書では、CA かつ重大 (クリティカル) としてマークされている基本制約拡張が含まれている必要がある。この確認は、中間 CA 証明書に見せかけた非 CA 証明書に対して保護機能を持つ。

制約の適用レベルは次のとおり。

OFF

制約の適用は完全に無効にされるので、望ましくない。市販の CA 証明書のほとんどは、デフォルト設定の STRONG で動作する。

EnforceBasicConstraints=off

EnforceBasicConstraints=false

STRONG

デフォルト。V3 CA 証明書に関する基本制約がチェックされ、証明書が CA 証明書であるかどうか検証される。

EnforceBasicConstraints=strong

EnforceBasicConstraints=true

STRICT

このレベルでは STRONG レベルと同じチェックが行われるが、CA 証明書に関する基本制約が「重大 (クリティカル)」としてマークされていなければならないことを指定した IETF RFC 2459 も厳密に適用される。市販の CA 証明書の多くが RFC 2459 に準拠しておらず、基本制約を重大としてマークしていないことから、これがデフォルト設定にはなっていない。RFC 2459 に厳密に準拠する場合は、strict を設定する。

EnforceBasicConstraints=strict

SecureProxy

OFF

このパラメータを ON に設定すると、プラグインと WebLogic Server 間のすべての通信で SSL プロトコルの使用が有効になる。このパラメータを定義する前に、対応する WebLogic Server のポートを SSL プロトコル用にコンフィグレーションしておく必要がある。

このパラメータは、メイン サーバ用のコンフィグレーションと仮想ホスト用のコンフィグレーション (仮想ホストが定義されている場合) の 2 つのレベルで設定できる。仮想ホスト用のコンフィグレーションでこの設定がオーバーライドされない場合、メイン サーバ用のコンフィグレーションから SSL のコンフィグレーションを継承する。

TrustedCAFile

なし

プラグインに対する信頼された認証局によるデジタル証明書が含まれるファイルの名前。SecureProxy パラメータが ON に設定されている場合はこのパラメータが必須。

filename にはファイルの絶対ディレクトリ パスを指定する。

RequireSSLHostMatch

true

プラグインが接続するホストの名前が、プロキシ プラグインが接続する WebLogic Server のデジタル証明書にある Subject Distinguished Name フィールドに一致する必要があるかどうかを指定する。

プラグインで SecureProxy=ON および RequireSSLHostMatch=true に設定する場合、ListenAddress プロパティに指定する値を、証明書に指定されたホスト名値に一致させる必要がある。

WebLogic Server の ExternalDNSName プロパティを使用し、プラグインで SecureProxy=ON および RequireSSLHostMatch=true に設定する場合、ExternalDNSName プロパティに指定する値を、証明書に指定されたホスト名値に厳密に一致させる必要がある。

SSLHostMatchOID

22

ASN.1 Object ID (OID) を指定する。ホスト名の比較に使用されるピア デジタル証明書内の Subject Distinguished Name フィールドを示す。デフォルトでは、Subject Distinguished Name の CommonName フィールドに対応する。一般的な OID 値は以下のとおり。

  • Sur Name-23

  • Common Name-22

  • Email-13

  • Organizational Unit-30

  • Organization-29

  • Locality-26

 

ページの先頭 前 次