表 6-1 Web サーバ プラグインの一般的なパラメータ
|
|
|
(単一の WebLogic Server にプロキシする場合は必須)
|
|
HTTP リクエストの転送先となる WebLogic Server ホスト (または、WebLogic Server で定義した仮想ホスト名)。
WebLogic クラスタを使用している場合は、 WebLogicHost の代わりに WebLogicCluster パラメータを使用する。
|
(単一の WebLogic Server にプロキシする場合は必須)
|
|
WebLogic Server ホストがプラグイン (または他のサーバ) からの接続リクエストをリスンするポート (プラグインと WebLogic Server の間で SSL を使用する場合は、このパラメータを SSL リスン ポートに設定して (「 SSL のコンフィグレーション」を参照)、 SecureProxy パラメータを ON に設定する)。
WebLogic クラスタを使用している場合は、 WebLogicPort の代わりに WebLogicCluster パラメータを使用する。
|
(WebLogic Server のクラスタにプロキシする場合は必須)
|
|
ロード バランシング用に使用できる WebLogic Server の一覧。サーバまたはクラスタのリストは、「ホスト : ポート」という形式のエントリのリスト。クラスタと単一のサーバが混在している場合、このパラメータに対して返される動的リストではクラスタ化されたサーバのみが返される。
パラメータの指定方法と必要な形式はプラグインによって異なる。以下の例を参照。
プラグインと WebLogic Server の間で SSL を使用する場合は、ポート番号を SSL リスン ポートに設定して (「 SSL のコンフィグレーション」を参照)、 SecureProxy パラメータを ON に設定する。
プラグインは、使用可能なサーバ間で単純なラウンドロビンを行う。このプロパティで指定するサーバ リストは、サーバおよびプラグインが保持する動的サーバ リストの最初の状態。新しく追加されたり、障害が発生したり、障害から回復したクラスタ メンバーがあると、WebLogic Server とプラグインは連携して自動的にサーバ リストを更新する。
動的クラスタ リストを無効化するには、 DynamicServerList パラメータを OFF に設定する。
プラグインは、クッキーの含まれている HTTP リクエスト、URL エンコーディングされたセッションの含まれている HTTP リクエスト、または POST データにセッションを格納している HTTP リクエストをそのクッキーを元々作成したクラスタ内のサーバに転送する。
|
|
|
RFC 仕様における URL の一般的な構文は次のとおり。
[PROTOCOL]://[HOSTNAME]:{PORT}/{PATH}/{FILENAME};{PATH_PARAMS}/{QUERY_STRING}...
PathTrim は、リクエストが WebLogic Server に転送される前に、元の URL の {PATH}/{FILENAME} 部分からプラグインによって取り除かれる文字列を指定する。次に例を示す。
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 を組み合わせて使用すると、このパスを変更できる。
|
|
|
RFC 仕様における URL の一般的な構文は次のとおり。
[PROTOCOL]://[HOSTNAME]:{PORT}/{PATH}/{FILENAME};{PATH_PARAMS}/{QUERY_STRING}...
PathPrepend は、 PathTrim の値が取り除かれた後、リクエストが WebLogic Server に転送される前に、元の URL の {PATH} 部分にプラグインによって付加されるパスを指定する。
ファイル名を追加する必要がない場合は、 PathPrepend ではなく、 DefaultFileName プラグイン パラメータを使用する点に注意すること。
|
|
|
プラグインが WebLogic Server ホストへの接続を試行する最大時間 (秒)。この値は ConnectRetrySecs より大きくする。接続できないまま、何回か再試行 ( ConnectRetrySecs の項を参照) しても成功せず、 ConnectTimeoutSecs の設定時間が切れた場合は、「 HTTP 503/Service Unavailable 」の応答がクライアントに返される。
エラー応答は ErrorPage パラメータを使用してカスタマイズできる。
|
|
|
WebLogic Server ホスト (またはクラスタ内のすべてのサーバ) への接続試行の間にプラグインがスリープする間隔 (秒)。この値は ConnectTimeoutSecs より小さくする。 HTTP 503/Service Unavailable 応答がクライアントに返されるまでにプラグインが接続を試行する回数は、 ConnectTimeoutSecs を ConnectRetrySecs で除算することで算出される。
再試行しないようにするには、 ConnectRetrySecs を ConnectTimeoutSecs と同じ値に設定する。ただし、プラグインは最低 2 回、接続を試みる。
エラー応答は ErrorPage パラメータを使用してカスタマイズできる。
|
|
|
デバッグで実行されるロギングの種類を設定する。デバッグ情報は、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 との間で送受信されるヘッダ、情報メッセージ、およびエラー メッセージのログが作成される。
|
|
|
Debug パラメータが ON に設定されている場合に生成されるログ ファイルのパスとファイル名を指定する。このディレクトリはこのパラメータの設定前に作成する必要がある。
|
|
|
NSAPI および Apache にのみ適用される。
プロキシ コンフィグレーションで定義する場合、WebLogic Server がサーバの DNS 名から IP へのマッピングを更新する間隔を秒単位で指定する。WebLogic Server インスタンスを別の IP アドレスに移行する場合に使用できるが、そのサーバの IP の DNS 名は変更されない。この場合、指定した間隔で DNS と IP のマッピングが更新される。
|
|
|
wlproxy.log を作成するディレクトリを指定する。ディレクトリが見つからない場合、Windows の場合は C:/temp に、あらゆる Unix プラットフォームの場合は /tmp にログ ファイルが作成される。
ポスト データ ファイル用の _wl_proxy ディレクトリの場所も指定する。
WLTempDir および WLLogFile の両方が設定されている場合、 wlproxy.log の場所に関して WLLogFile が優先する。ただし、 WLTempDir は _wl_proxy ディレクトリの場所を特定する。
|
|
|
特殊なクエリ パラメータ「 __WebLogicBridgeConfig 」を有効にする。このパラメータは、プラグインからコンフィグレーション パラメータに関する詳細を取得するのに使用する。
たとえば、 DebugConfigInfo を設定して「 __WebLogicBridgeConfig 」を有効にし、クエリ文字列 ?__WebLogicBridgeConfig を含むリクエストを送信すると、コンフィグレーション情報と実行時統計が収集され、その情報がブラウザに返される。この場合、プラグインは WebLogic Server に接続しない。
このパラメータはデバッグにのみ使用するもので、出力メッセージの形式はリリースによって異なる。セキュリティ上の理由から、プロダクション システムではこのパラメータを OFF にしておくことが望ましい。
|
(Microsoft Internet Information Server プラグインでは利用できない)
|
|
true に設定した場合、プラグインでは、リクエストを WebLogic Server に転送する前に、リクエストの変換されたパス (Proxy-Path-Translated) の有無とパーミッションがチェックされる。
ファイルが存在しない場合、「 HTTP 404 File Not Found 」の応答がクライアントに返される。ファイルが存在しているが読み取れない場合は、「 HTTP 403/Forbidden 」の応答がクライアントに返される。どちらの場合も、Web サーバのデフォルトのメカニズムがこれらの応答を処理する。このオプションは、WebLogic Server Web アプリケーションのドキュメント ルートと Web サーバのドキュメント ルートが同じである場合に役立つ。
エラー応答は ErrorPage パラメータを使用してカスタマイズできる。
|
|
|
Web サーバがリクエストを WebLogic Server に転送できなかった場合に表示されるユーザ独自のエラー ページを作成できる。
|
|
|
接続中のソケットのタイムアウトを秒単位で設定する。
|
WLIOTimeoutSecs (HungServerRecoverSecs の新しい名称)
|
|
WebLogic Server のリクエストへの応答に対するプラグインの待ち時間を定義する。プラグインは、サーバが応答するまで HungServerRecoverSecs で指定した秒数だけ待ってから、サーバの応答なしを宣言して、次のサーバにフェイルオーバする。この値は、大きな値にしておく必要がある。サーブレットの処理時間より短くした場合は、予期しない結果が発生する場合がある。
|
|
|
ON に設定されている状態で、サーバが WLIOTimeoutSecs (HungServerRecoverSecs の新しい名称) の時間内に応答しない場合、プラグインはフェイルオーバする。
OFF に設定した場合、プラグインはフェイルオーバしない。Apache HTTP サーバを使用している場合は、さまざまな URL または MIME タイプに対してこのパラメータを別々に設定できる。
|
|
|
WebLogic Server Web アプリケーションの WebLogic Server セッション クッキー名を変更する場合、プラグインの CookieName パラメータを同じ値に変更する必要がある。WebLogic セッション クッキー名は、WebLogic 固有のデプロイメント記述子の <session-descriptor> 要素で設定される。
|
|
|
URI が「 / 」の場合、プラグインは以下の手順を実行する。
これによって、WebLogic Server からリダイレクトされなくなる。
DefaultFileName は、リクエストがプロキシされる WebLogic Server の Web アプリケーションのデフォルト ウェルカム ページに設定する。たとえば、 DefaultFileName を welcome.html に設定した場合、HTTP リクエストが「 http://somehost/weblogic 」であれば、「 http://somehost/weblogic/welcome.html 」になる。このパラメータが機能するためには、リクエストが転送される全 Web アプリケーションで同じウェルカム ファイルを指定する必要がある。詳細については、「 ウェルカム ファイルのコンフィグレーション」を参照。
Apache を使用する場合の注意 : Stronghold バージョンまたは Raven バージョンを使用する場合は、 IfModule ブロックではなく Location ブロックでこのパラメータを定義する。
|
|
|
POST データの最大許容サイズ (バイト単位)。コンテキスト長が MaxPostSize を超えた場合、プラグインによってエラー メッセージが返される。 -1 に設定した場合、POST データのサイズはチェックされない。これは、POST データを使用してサーバを過負荷状態にしようとするサービス拒否攻撃を防ぐのに役立つ。
|
|
|
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
|
|
|
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 の設定に関係なくプラグインがデータをメモリに読み込み、フェイルオーバ時にセカンダリへの複写が必要であればこれを使用する。
|
(Microsoft Internet Information Server のみ)
|
|
このパラメータの値は、0 (低)、1 (中)、および 2 (高)。デフォルト値は 2。この優先順位は、iisforward.ini ファイルに置かれる必要がある。この優先順位を使用して、IIS の iisforward.dll フィルタの優先レベルが設定される。受信リクエストが複数のフィルタに一致する場合に、IIS は優先レベルに従って、最初に呼び出すフィルタを判別する。
|
|
|
このパラメータを使用すると、特定のリクエストをプロキシ処理から除外できる。
このパラメータは、Location タグ レベルでローカルに定義することも、グローバルに定義することもできる。このプロパティをローカルに定義した場合、グローバルなプロパティはオーバーライドされず、2 つのパラメータが両方とも定義される。
|
(Microsoft Internet Information Server のみ)
|
|
WlForwardPath が「/」に設定されている場合は、すべてのリクエストがプロキシされる。特定の文字列で始まるリクエストを転送するには、 WlForwardPath をその文字列に設定する。たとえば、 WlForwardPath を /weblogic に設定すると、 /weblogic で始まるすべてのリクエストが Weblogic Server に転送される。
このパラメータは、パスでプロキシを実行する場合に必要。カンマで文字列を区切れば、複数の文字列を設定できる。たとえば WlForwardPath=/weblogic,/bea のように設定する。
|
|
|
プラグインと WebLogic Server の間のアクティブではない接続が閉じられるまでの時間。このパラメータを有効にするには、 KeepAliveEnabled を true (Apache プラグインを使用している場合は ON ) に設定する必要がある。
このパラメータの値は、Administration Console の [サーバ|HTTP] タブで設定される [持続時間] フィールドの値、または KeepAliveSecs 属性を使用して server MBean で設定される値以下でなければならない。
|
|
true (Microsoft IIS プラグイン)
|
プラグインと WebLogic Server の間の接続のプールを有効化する。
Microsoft IIS プラグインの有効な値は、 true および false 。
Apache プラグインの有効な値は、 ON および 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 にクエリ文字列を渡す。
|
|
|
WebLogicCluster パラメータまたは WebLogic Server から返される動的クラスタ リストにある WebLogic Server で障害が発生した場合、その障害の発生したサーバは「bad」とマークされ、プラグインはリスト内の次のサーバに接続しようとする。
MaxSkips には、プラグインが「bad」とマークされたサーバへの接続を再試行するまでの時間を設定する。プラグインは、ユニークなリクエスト (クッキーのないリクエスト) を受信するたびにリスト内の新しいサーバに接続しようとする。
|
|
|
OFF に設定すると、プラグインからプロキシされるリクエストをロード バランシングするために使用される動的クラスタ リストが無視され、 WebLogicCluster パラメータで指定された静的リストのみが使用される。通常、このパラメータは ON のままにする。
このパラメータを OFF に設定する場合は、以下のことを考慮する必要がある。
静的リストの 1 つまたは複数のサーバで障害が発生した場合、プラグインは応答不能のサーバへの接続に時間を費やし、その結果としてパフォーマンスが低下する可能性がある。
クラスタに新しいサーバを追加した場合は、このパラメータを再定義するまでプラグインはその新しいサーバにリクエストをプロキシできない。WebLogic Server は、新しいサーバがクラスタに追加されたときに動的サーバ リストにその新しいサーバを自動的に追加する。
|
|
|
次の条件に一致する場合に、プラグインと WebLogic Server 間の SSL 通信を維持する場合は、このパラメータを ON に設定する。
HTTP クライアント リクエストが HTTPS プロトコルを指定している。
リクエストが 1 つまたは複数のプロキシ サーバ (WebLogic Server プロキシ プラグインを含む) を経由して渡された。
プラグインと WebLogic Server 間の接続で HTTP プロトコルを使用している。
WLProxySSL を ON に設定すると、WebLogic Server からクライアントに返されるロケーション ヘッダでは HTTPS プロトコルが指定される。
|
|
|
プラグインがマルチホーム マシンで動作している WebLogic Server インスタンスに接続する場合のバインド先の IP アドレスを定義する。
WLLocalIP を設定しない場合、マルチホーム マシンで任意の IP アドレスが使用される。
|