5 Oracle WebLogic Serverプロキシ・プラグインのパラメータ
LinuxでApache HTTP Serverを構成するために使用できるパラメータについて学習します。
ノート:
Oracle WebLogic Serverプロキシ・プロキシ・プラグインのパラメータは、Webサーバーごとに固有の名前と書式を持つ特別な構成ファイルで指定する必要があります。Apache HTTP Serverのプロキシ・プラグインに固有の構成ファイルの詳細は、「Apache HTTP Server用Oracle WebLogic Serverプロキシ・プラグインの構成」を参照してください。この章の内容は次のとおりです。
- Oracle WebLogic Serverプロキシ・プラグインの一般パラメータ
Oracle WebLogic Serverプロキシ・プラグインの一般的なパラメータの名前では、大/小文字が区別されます。 - Oracle WebLogic Serverプロキシ・プラグインのSSLパラメータ
Oracle WebLogic Serverプロキシ・プラグインのSSLパラメータの名前では、大/小文字が区別されます。
Oracle WebLogic Serverプロキシ・プラグインの一般パラメータ
Oracle WebLogic Serverプロキシ・プラグインの一般的なパラメータの名前では、大/小文字が区別されます。
この項には次のトピックが含まれます:
- ConnectRetrySecs
- ConnectTimeoutSecs
- DebugConfigInfo
- DefaultFileName
- DynamicServerList
- ErrorPage
- FileCaching
- Idempotent
- KeepAliveEnabled
- KeepAliveSecs
- MatchExpression
- MaxPostSize
- MaxSkipTime
- PathPrepend
- PathTrim
- QueryFromRequest
- WebLogicCluster
- WebLogicHost
- WebLogicPort
- WLCookieName
- WLDNSRefreshInterval
- WLExcludePathOrMimeType
- WLForwardUriUnparsed
- WLIOTimeoutSecs
- WLLocalIP
- WLMaxWebSocketClients
- WLProtocol
- WLProxyPassThrough
- WLProxySSL
- WLProxySSLPassThrough
- WLRetryOnTimeout
- WLRetryAfterDroppedConnection
- WLServerInitiatedFailover
- WLSocketTimeoutSecs
- WLSRequest
- WLTempDir
ConnectRetrySecs
デフォルト: 2
再試行しないようにするには、ConnectRetrySecs
をConnectTimeoutSecs
と同じ値に設定します。ただし、プロキシ・プラグインは、少なくとも2回接続を試行します。
エラー・レスポンスは、ErrorPage
パラメータを使用してカスタマイズできます。
ConnectTimeoutSecs
デフォルト: 10
プロキシ・プラグインがOracle WebLogic Serverホストへの接続を試行する最大時間(秒)。この値はConnectRetrySecs
より大きくしてください。指定どおりに再試行されたが(ConnectRetrySecs
を参照)、接続に成功せずにConnectTimeoutSecs
の秒数が経過した場合は、クライアントにHTTP 503/Service Unavailable
というレスポンスが送信されます。
エラー・レスポンスは、ErrorPage
パラメータを使用してカスタマイズできます。
DebugConfigInfo
デフォルト: OFF
特殊な問合せパラメータ__WebLogicBridgeConfigを有効にします。プロキシ・プラグインから構成パラメータの詳細を取得するために使用します。
たとえば、DebugConfigInfo
を設定して__WebLogicBridgeConfigを有効にし、問合せ文字列__WebLogicBridgeConfigを含むリクエストを送信すると、プロキシ・プラグインによって構成情報と実行時統計が収集され、情報がブラウザに返されます。この場合、プロキシ・プラグインはOracle WebLogic Serverに接続しません。
このパラメータはデバッグにのみ使用するもので、出力メッセージの形式はリリースによって異なります。セキュリティのため、本番システムではこのパラメータをOFFにしてください。
DefaultFileName
デフォルト: none
URIが"/"の場合、プロキシ・プラグインは次のステップを実行します:
PathTrim
パラメータで指定されたパスを取り除きます。DefaultFileName
の値を末尾に付加します。PathPrepend
で指定された値を先頭に付加します。
これによって、Oracle WebLogic Serverからリダイレクトされなくなります。
DefaultFileNameを、リクエストがプロキシされるOracle WebLogic ServerのWebアプリケーションのデフォルトのようこそページに設定します。たとえば、DefaultFileName
をwelcome.htmlに設定した場合は、http://somehost/weblogicというHTTPリクエストは、http://somehost/weblogic/welcome.htmlになります。このパラメータが機能するためには、リクエストが転送されるすべてのWebアプリケーションで同じウェルカム・ファイルを指定する必要があります。『Oracle Fusion Middleware Oracle WebLogic Server Webアプリケーション、サーブレット、JSPの開発』のWelcomeファイルの構成に関する項を参照してください。
Apacheユーザー向けのノート: StrongholdバージョンまたはRavenバージョンを使用する場合は、このパラメータをIfModule
ブロック内ではなくLocation
ブロック内で定義します。
DynamicServerList
デフォルト: ON
OFF
に設定すると、プロキシ・プラグインはプロキシ・プラグインからプロキシされたロード・バランシング・リクエストに使用される動的クラスタ・リストを無視し、WebLogicCluster
パラメータで指定された静的リストのみを使用します。通常は、このパラメータをON
に設定したままにしてください。
このパラメータをOFF
に設定した場合は、次のような影響があります。
-
静的リスト内の1つ以上のサーバーで障害が発生した場合、プロキシ・プラグインは、停止したサーバーへの接続を試行して時間を浪費し、パフォーマンスが低下する可能性があります。
-
新しいサーバーをクラスタに追加する場合、このパラメータを再定義しないかぎり、プロキシ・プラグインはリクエストを新しいサーバーにプロキシできません。Oracle WebLogic Serverは、新しいサーバーがクラスタの一部になると、これらのサーバーを動的サーバー・リストへ自動的に追加します。
ErrorPage
デフォルト: none
WebサーバーからOracle WebLogic Serverにリクエストを転送できなかった場合に表示される、独自のエラー・ページを作成できます。
バックエンド・サーバーがHTTP 503/Service Unavailableレスポンスを返し、フェイルオーバー用のサーバーがない場合、プロキシ・プラグインはエラー・ページにリダイレクトされます。
FileCaching
デフォルト: ON
ON
に設定すると、リクエストのPOSTデータのサイズが2048バイトより大きい場合に、POSTデータが、まずディスク上の一時ファイルに読み込まれ、次に8192バイトのチャンク単位でOracle WebLogic Serverに転送されます。これにより、フェイルオーバーの間もPOSTデータが保持され、プライマリがダウンしても、必要なすべてのデータをセカンダリにコピーすることができます。
FileCaching
がON
になっていると、WebサーバーとWebLogicとの間でデータがまだ転送中でも、POSTの進行状況を追跡するクライアントは、転送が完了したと認識します。したがって、Oracle WebLogic Server上で実際にデータが使用可能になった時点で、アップロード中にブラウザが表示する進行状況バーにそのことを反映させる場合は、FileCaching
をON
にしない方がよいです。
OFF
に設定され、リクエスト内のPOSTデータのサイズが2048バイトを超える場合、リクエストを処理するためにOracle WebLogic Serverクラスタ・メンバーが識別されるまで、POSTデータの読取りは延期されます。その後、プロキシ・プラグインはPOSTデータを読み取り、ただちに8192バイトのチャンク単位でWebLogic Serverに送信します。
FileCaching
をOFF
すると、フェイルオーバーが制限されます。リクエストの処理中にOracle WebLogic Serverプライマリ・サーバーが停止した場合、すでにプライマリに送信されたPOSTデータはセカンダリに繰り返すことはできません。
最後に、FileCaching
の設定方法に関係なく、POSTデータのサイズが2048バイト以下の場合、プロキシ・プラグインはデータをメモリーに読み込み、フェイルオーバー中に必要に応じてセカンダリに繰り返すために使用します。
- POSTデータ・ファイルの場所
FileCachingパラメータがONに設定され、リクエスト内のPOSTデータのサイズが2048バイトを超える場合、POSTデータはまずディスク上の一時ファイルに読み込まれ、次に8192バイトのチャンクでOracle WebLogic Serverに転送されます。
POSTデータ・ファイルの場所
/tmp/_wl_proxy
の下にあります。Windowsの場合は、次の場所にあります(WLTempDir
を指定していない場合)。
- 環境変数
TMP
- 環境変数
TEMP
C:\Temp
親トピック: FileCaching
Idempotent
デフォルト: ON
ONに設定され、サーバーがWLIOTimeoutSecs内に応答しない場合、メソッドがIdempotentであれば、プロキシ・プラグインはフェイルオーバーします。
また、IdempotentがONに設定され、サーバーがREAD_ERROR_FROM_SERVER
などのエラーで応答する場合も、プロキシ・プラグインはフェイルオーバーします。
IdempotentがOFFに設定されている場合、プロキシ・プラグインはフェイルオーバーしません。Apache HTTP Serverを使用している場合は、複数のURLまたはMIMEタイプに対してこのパラメータを別々に設定できます。
Idempotentが有効なのは、リクエストがOracle WebLogic Serverに正常に送信され、プロキシ・プラグインがバックエンド・サーバーからのレスポンスを待機中の場合のみです。
POSTリクエストは、Idempotentとマークされていても再試行されません。
KeepAliveEnabled
デフォルト: ON
このディレクティブにより、プロキシ・プラグインとOracle WebLogic Serverの間の接続のプーリングが可能になります。有効値はON
およびOFF
です。
Apache prefork mpmの使用中に、Apache Webサーバーが失敗する可能性があります。prefork mpmの使用時にはKeepAliveEnabled
をOFF
に設定するか、Apacheでworker mpmを使用します。
ノート:
KeepAliveEnabled
とHTTP/2の両方がバックエンド接続用に構成されている場合、次のメッセージが生成されます:
HTTP/2接続が有効になっているため、KeepAliveEnabledオプションは無視されます
KeepAliveSecs
デフォルト: 20
プロキシ・プラグインとOracle WebLogic Serverの間の非アクティブな接続が閉じられるまでの時間。このパラメータを有効にするには、KeepAliveEnabled
をtrue
(Apache HTTP Serverを使用している場合はON
)に設定する必要があります。
このパラメータの値は、管理コンソールの「サーバー/HTTP」タブで設定される「期間」フィールドの値以下、またはサーバーMBeanでKeepAliveSecs
属性によって設定される値以下である必要があります。
MatchExpression
デフォルト: none
このパラメータを使用すると、既存のパラメータ値の変更や、特定の構成に対する新しいパラメータの追加が可能です。
MatchExpressionパラメータは、*
と?
の正規表現のみをサポートします。
-
0以上の文字と一致する
*
-
1つの文字と完全に一致する
?
このパラメータは、次のような2つのシナリオについて構成できます。
MIMEタイプによるプロキシ:
特定のMIMEタイプに対して他のパラメータを設定するには、次の形式でこのパラメータを使用します。
構文:
MatchExpression <file_extension> <param=value>|<param-value>|…
たとえば、次の構成では、*.jsp
はmyHost:8080
にプロキシされます。
<IfModule weblogic_module> MatchExpression *.jsp WebLogicHost=myHost|WebLogicPort=8080 </IfModule>
パスによるプロキシ:
また、特定のパスに対して他のパラメータを設定するには、次の形式でこのパラメータを使用します。
構文:
MatchExpression <path> <param=value>|<param-value>|…
たとえば、次の構成では、/weblogic
で始まるURIはmyHost:9090
にプロキシされます。
<IfModule weblogic_module> MatchExpression /weblogic WebLogicHost=myHost|WebLogicPort=9090 </IfModule>
前述のとおり、MatchExpression
を使用してパラメータ値をオーバーライドすることもできます。新しいパラメータ(構成内で使用されていないパラメータ)の定義に使用することも可能です。
たとえば、次のような構成では、すべてのリクエストがmyHost:8080
にプロキシされます。タイプjpg
に一致するURIはmyHost:8080/images
にプロキシされ、その他のURIはmyHost:8080
にプロキシされます。
<IfModule weblogic_module> SetHandler weblogic-handler WebLogicHost myHost WebLogicPort 8080 MatchExpression *.jpg PathPrepend=/images </IfModule>
MatchExpressionの使用方法のその他の例は、「Apache HTTP Server用Oracle WebLogic Serverプロキシ・プラグインの構成」に記載されています。
MaxPostSize
デフォルト: 0
POSTデータの最大許容サイズ(バイト単位)。コンテンツ長がMaxPostSize
を超えている場合は、プロキシ・プラグインによってエラー・メッセージが返されます。0に設定した場合、POSTデータのサイズはチェックされません。これは、POSTデータを使用してサーバーを過負荷状態にしようとするサービス拒否攻撃を防ぐために役立ちます。
MaxSkipTime
デフォルト: 10
WebLogicCluster
パラメータまたはOracle WebLogic Serverから返された動的クラスタ・リストのいずれかにリストされているOracle WebLogic Serverで障害が発生した場合、障害が発生したサーバーは"bad"とマークされ、プロキシ・プラグインはリスト内の次のサーバーへの接続を試行します。
MaxSkipTime
は、プロキシ・プラグインが"bad"とマークされたサーバーを再試行するまでの時間を設定します。プロキシ・プラグインは、一意のリクエスト(Cookieのないリクエスト)を受信するたびに、リスト内の新しいサーバーに接続しようとします。
PathPrepend
デフォルト: null
RFC仕様のとおり、URLの一般的な構文は次のようになります。
[PROTOCOL]://[HOSTNAME]:{PORT}/{PATH}/{FILENAME};{PATH_PARAMS}/{QUERY_STRING}...
PathPrepend
は、PathTrimの値が切り捨てられてからリクエストがOracle WebLogic Serverに転送されるまでの間に、プロキシ・プラグインによって元のURLの{PATH}
部分の先頭に付加されるパスを指定します。
ファイル名を付加する必要がある場合は、PathPrepend
ではなくDefaultFileName
パラメータを使用してください。
PathTrim
デフォルト: null
RFC仕様のとおり、URLの一般的な構文は次のようになります。
[PROTOCOL]://[HOSTNAME]:{PORT}/{PATH}/{FILENAME};{PATH_PARAMS}/{QUERY_STRING}...
PathTrim
は、リクエストがOracle WebLogic Serverに転送される前にプロキシ・プラグインによって元のURLの{PATH}/{FILENAME}
部分から切り捨てられる文字列を指定します。たとえば、http://myWeb.server.com/weblogic/foo
というURLが解析のためにプロキシ・プラグインに渡され、URLをOracle WebLogic Serverに渡す前に/weblogic
を削除するようにPathTrim
が設定されている場合は、Oracle WebLogic Serverに転送されるURLはhttp://myWeb.server.com:7001/foo
です。
プロキシ・プラグインを使用してOracle WebLogic Serverへのリクエストをプロキシするように既存のサードパーティ・サーバーを新しく変換する場合は、アプリケーション・パスを/foo
に変更し、weblogic/foo
を含める必要があります。PathTrim
とPathPrepend
を併用することで、このパスを変更できます。
<Location>
タグ内にPathTrim
パラメータを構成します。
PathTrim
パラメータが<Location>
タグ内に構成されていないため、次の構成は誤りです:
<Location /weblogic>
WLSRequest On
</Location>
<IfModule mod_weblogic.c>
WebLogicHost localhost
WebLogicPort 7001
PathTrim /weblogic
</IfModule>
正しい構成は次のとおりです。
<Location /weblogic>
WLSRequest On
PathTrim /weblogic
</Location>
<Location>
ディレクティブは、囲まれたディレクティブの範囲をURLによって制限します。「Apache Location Directive」を参照してください。
QueryFromRequest
デフォルト: OFF
ON
に設定すると、Apache HTTPサーバーで次のコマンドが使用されます。
(request_rec *)r->the_request
問合せ文字列をOracle WebLogic Serverに渡します。(詳細は、Apacheドキュメントを参照してください。)この動作は、Netscapeバージョン4.xブラウザで、問合せ文字列にスペースのあるリクエストを行う場合に役立ちます。
OFF
に設定すると、Apache HTTP Serverは(request_rec *)r->args
を使用して問合せ文字列をOracle WebLogic Serverに渡します。
WebLogicCluster
Oracle WebLogic Serverのクラスタまたはクラスタ化されていない複数のサーバーにプロキシする場合に必要です。
デフォルト: none
WebLogicCluster
パラメータは、クラスタ化されたバックエンド・サーバーのリストにプロキシしたり、クラスタ化されていない管理対象サーバー・インスタンス間でのロード・バランシングを実行するために必要となります。
ロード・バランシングに使用可能なOracle WebLogic Serverのリスト。サーバーまたはクラスタのリストは、host:port
エントリのリストです。クラスタとシングル・サーバーを組み合せて指定した場合、このパラメータに対して返される動的リストには、クラスタ化されたサーバーのみが含まれます。
Apache HTTP Serverのこのパラメータの値を指定する構文は、「Apache HTTP Server用Oracle WebLogic Serverプロキシ・プラグインの構成」を参照してください。
プロキシ・プラグインとOracle WebLogic Serverの間にSSLを使用している場合は、ポート番号をSSLリスニング・ポートに設定し、SecureProxyパラメータをONに設定します。
プロキシ・プラグインは、使用可能なすべてのサーバー間で単純なラウンドロビンを実行します。このプロパティで指定したサーバー・リストが、サーバーとプロキシ・プラグインが保持する動的サーバー・リストの開始点となります。Oracle WebLogic Serverとプロキシ・プラグインは連携して動作し、新しいクラスタ・メンバー、障害が発生したクラスタ・メンバーおよびリカバリされたクラスタ・メンバーでサーバー・リストを自動的に更新します。
動的クラスタ・リストの使用を無効にするには、DynamicServerListパラメータをOFF
に設定します。
プロキシ・プラグインは、Cookie、URLでエンコードされたセッションまたはPOSTデータに格納されているセッションを含むHTTPリクエストを、Cookieを作成したクラスタ内のサーバーに転送します。
WebLogicHost
単一のOracle WebLogic Serverにプロキシする場合は必須です。
デフォルト: none
HTTPリクエストが転送される、Oracle WebLogic Serverホスト(またはOracle WebLogic Serverに定義されている仮想ホスト名)。Oracle WebLogicクラスタを使用している場合は、WebLogicHost
ではなくWebLogicCluster
パラメータを使用します。
WebLogicPort
単一のOracle WebLogic Serverにプロキシする場合は必須です。
デフォルト: none
Oracle WebLogic Serverホストがプロキシ・プラグイン(または他のサーバー)からの接続リクエストをリスニングするポート。(プロキシ・プラグインとOracle WebLogic Serverの間にSSLを使用している場合は、このパラメータをSSLリスニング・ポートに設定し、SecureProxy
パラメータをONに設定します)。
Oracle WebLogic Clusterを使用している場合は、WebLogicPort
のかわりにWebLogicCluster
パラメータを使用します。
WLCookieName
デフォルト: JSESSIONID
Oracle WebLogic Server WebアプリケーションでOracle WebLogic ServerセッションCookieの名前を変更する場合は、プロキシ・プラグインのWLCookieName
パラメータを同じ値に変更する必要があります。Oracle WebLogicセッションCookieの名前は、WebLogic固有のデプロイメント記述子である、weblogic.xml
内の<session-descriptor>
要素で設定されます。
WLDNSRefreshInterval
デフォルト: 0 (起動時に1回だけ参照)
プロキシ構成で定義されている場合は、Oracle WebLogic ServerがサーバーのDNS名とIPのマッピングをリフレッシュする秒間隔を指定します。これは、Oracle WebLogic Serverインスタンスが別のIPアドレスに移行されたが、そのサーバーのIPのDNS名が同じままである場合に使用できます。この場合、指定したリフレッシュ間隔で、DNSとIPとの間のマッピングが更新されます。
WLExcludePathOrMimeType
デフォルト: none
このパラメータによって、プロキシ設定から一定のリクエストを除外できます。
このパラメータは、グローバルに定義することも、「場所」タグ・レベルでローカルに定義することもできます。このプロパティをローカルに定義した場合、グローバルなプロパティがオーバーライドされるのではなく、2つのパラメータの集合が定義されます。
WLForwardUriUnparsed
デフォルト: OFF
ONに設定すると、Oracle WebLogic Serverプロキシ・プラグインは、クライアントからOracle WebLogic Serverに元のURIを転送します。OFF (デフォルト)に設定すると、Oracle WebLogic Serverに送信されるURIは、mod_rewrite
またはその他のWebサーバー・プラグイン・モジュールによって変更される可能性があります。
WLIOTimeoutSecs
HungServerRecoverSecs
の新しい名称。
デフォルト: 120
プロキシ・プラグインがOracle WebLogic Serverからのリクエストへのレスポンスを待機する時間を定義します。プロキシ・プラグインは、WLIOTimeoutSecs
の間サーバーが応答するのを待った後、サーバー無応答を宣言し、次のサーバーにフェイルオーバーします。値は大きい値に設定する必要があります。値がサーブレットの処理時間より短い場合、予期しない結果が発生することがあります。
最小値: 10
最大値: 2147483647
WLLocalIP
デフォルト: none
プロキシ・プラグインがマルチホーム・マシンで実行されているOracle WebLogic Serverインスタンスに接続する場合にバインドするIPアドレス(プロキシ・プラグインのシステム上)を定義します。
WLLocalIP
が設定されていない場合、TCP/IPスタックはソースIPアドレスを選択します。
WLMaxWebSocketClients
デフォルト: Windows: ThreadsPerChild
の半分、Windows以外: MaxRequestWorkers
の半分
アクティブなWebSocket接続の数をいつでも制限します。
ノート:
このパラメータに設定できる最大値は、ThreadsPerChild
の75% (Windowsの場合)またはMaxRequestWorkers
の75% (Windows以外の場合)となります。このパラメータに対して指定された値が、許容されている最大値よりも大きい場合は、自動的にその最大値以下に設定されます。
WLProtocol
デフォルト: http/1.1
スコープ: ロケーション、サーバー・コンテキスト
http/2
- HTTP/2プロトコルの場合http/1.1
- HTTP/1.1プロトコルの場合
このディレクティブは、バックエンド・サーバーと通信するためにOracle WebLogic Serverプロキシ・プラグインによって使用されるプロトコルを指定します。
WLProtocol
ディレクティブが構成されていない場合、Oracle WebLogic Serverプロキシ・プラグインはHTTP/1.1を介してバックエンド・サーバーにリクエストを送信します。バックエンド・サーバーがHTTP/2プロトコルをサポートしていない場合、Oracle WebLogic Serverプロキシ・プラグインはHTTP/1.1にフォールバックせず、503エラーが返されます。
WLProxyPassThrough
デフォルト: OFF
チェーン・プロキシが設定されており、プロキシ・プラグインまたはが他のプロキシまたはロード・バランサの背後で実行されている場合は、WLProxyPassThrough
パラメータを明示的に有効にする必要があります。このパラメータによって、ヘッダーはプロキシの連鎖に渡されるようになります。
WLProxySSL
デフォルト: OFF
次の条件に該当する場合にプロキシ・プラグインとOracle WebLogic Serverとの間のSSL通信を維持するには、このパラメータをON
に設定します:
- HTTPクライアントのリクエストでHTTPSプロトコルが指定されています。
- リクエストは、1つ以上のプロキシ・サーバー(Oracle WebLogic Serverプロキシ・プラグインを含む)を介して渡されます。
- プロキシ・プラグインとOracle WebLogic Serverの間の接続で、HTTPプロトコルが使用されます。
WLProxySSL
がON
に設定されている場合、Oracle WebLogic Serverからクライアントに返されるロケーション・ヘッダーでHTTPSプロトコルが指定されます。
WLProxySSLPassThrough
デフォルト: OFF
Webサーバーとプロキシ・プラグインより前にデプロイされたロード・バランサまたはその他のソフトウェアがSSLの終端点となっており、その製品において、クライアントからの接続がSSLを介すかどうかに基づいてWL-Proxy-SSL
リクエスト・ヘッダーがtrue
またはfalse
に設定される場合は、SSLの使用がOracle WebLogic Serverに渡されるよう、WLProxySSLPassThrough
をONに設定します。
SSL終端点が、プロキシ・プラグインが動作するWebサーバーにある場合、またはロード・バランサがWL-Proxy-SSL
を設定しない場合、WLProxySSLPassThrough
をOFF(デフォルト)に設定します。
WLRetryOnTimeout
デフォルト: None
Oracle WebLogic Serverがステータス行を送信する前にタイムアウトが発生したときに、リクエスト(POSTリクエストを含む)を再試行するかどうかをOracle WebLogic Serverプロキシ・プラグインに指示します。有効な引数は次のとおりです。
ALL
: すべてのリクエストが再試行されます。IDEMPOTENT
: 多重呼出し不変メソッドを使用しているリクエストのみが再試行されます。NONE
: リクエストは再試行されません。
WLRetryAfterDroppedConnection
デフォルト: ALL
Oracle WebLogic Serverがステータス行を送信する前に接続が失われたときに再試行するリクエストをOracle WebLogic Serverプロキシ・プラグインに指示します。有効な引数は次のとおりです。
ALL
: すべてのリクエストが再試行されます。IDEMPOTENT
: 多重呼出し不変メソッドを使用しているリクエストのみが再試行されます。NONE
: リクエストは再試行されません。
WLServerInitiatedFailover
デフォルト: ON
これは、Oracle WebLogic Serverからの503エラー・レスポンスによって別のサーバーへのフェイルオーバーがトリガーされるかどうかを制御します。通常プロキシ・プラグインは、503エラー・レスポンスを受け取ると、別のサーバーへのフェイルオーバーを試行します。WLServerInitiatedFailover
をOFFに設定すると、503エラー・レスポンスはただちにクライアントに返されます。
WLSocketTimeoutSecs
デフォルト: 2 (0より大きくすること)
ソケットの接続時のタイムアウトを秒単位で設定します。詳細は、ConnectTimeoutSecs
およびConnectRetrySecs
を参照してください。
WLSRequest
デフォルト: OFF
これは、Oracle WebLogic Serverに転送されるリクエストの識別に使用されるWLSRequest Onメカニズムのかわりに使用できます。たとえば、
<Location /weblogic> WLSRequest ON PathTrim /weblogic </Location>
SetHandler
weblogic-handlerではなくWLSRequest
をONにして使用すると、次のような利点があります。
-
Webサーバーの処理オーバーヘッドが全般的に低減されます。
-
Webサーバーの
DocumentRoot
が処理速度の遅いファイル・システム上にある場合に起こる著しいパフォーマンスの低下が解決されます。 -
ファイル・システムの長さ制限が原因でURIをファイル・システムにマップできない場合の403エラーが解決されます。
Oracle WebLogic Serverプロキシ・プラグインのSSLパラメータ
Oracle WebLogic Serverプロキシ・プラグインのSSLパラメータの名前では、大/小文字が区別されます。
ノート:
SCG証明書は、Oracle WebLogic Serverプロキシ・プラグインでの使用はサポートされていません。SCG以外の証明書は適切に機能し、Oracle WebLogic Serverとプロキシ・プラグインの間のSSL通信を可能にします。
キーストア関連の初期化パラメータは、Oracle WebLogic Serverプロキシ・プラグインでの使用はサポートされていません。
この項には次のトピックが含まれます:
SecureProxy
デフォルト: OFF
このパラメータをONに設定すると、プロキシ・プラグインとOracle WebLogic Serverの間のすべての通信にSSLプロトコルを使用できます。このパラメータを定義する前に、対応するOracle WebLogic Server上のポートをSSLプロトコル用に構成しておく必要があります。
このパラメータは、メイン・サーバー用構成と仮想ホスト用構成(仮想ホストを定義してある場合)という2つのレベルで設定可能です。仮想ホスト用構成において、SSL構成はメイン・サーバー用構成から継承されます(この設定がオーバーライドされない場合)。
WebLogicSSLCiphers
サポートされている暗号:
- TLSv1.3暗号:
TLS_AES_256_GCM_SHA384
TLS_AES_128_GCM_SHA256
- TLSv1.2暗号:
ECDHE-RSA-AES256-GCM-SHA384
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-ECDSA-AES256-GCM-SHA384
ECDHE-ECDSA-AES128-GCM-SHA256
非推奨の(まだ使用可能な)TLSv1.2暗号:
AES128-GCM-SHA256
AES256-GCM-SHA384
AES128-SHA256
AES256-SHA256
AES256-SHA
AES128-SHA
デフォルト: サポートされているすべての暗号
スコープ: サーバー、VirtualHost
適用先: Apache HTTP Server
このディレクティブは、Oracle WebLogic Serverプロキシ・プラグインとOracle WebLogic Serverの間で使用される暗号のスペース区切りリストを受け入れます。
ノート:
WebLogicSSLCiphers
がTLSv1.3暗号に設定され、WebLogicSSLVersion
がTLSv1.2に設定されている場合、またはその逆の場合、サーバーの起動中に次のエラー・メッセージがスローされます:Error: No available SSL version. Possible Mismatch between the configured protocol(s) and cipher(s)
WebLogicSSLCiphers
を省略すると、デフォルトの暗号リストが選択されます(つまり、サポートされているすべての暗号)。WebLogicSSLVersion
を省略すると、デフォルトのプロトコル・リスト(TLSv1.2およびTLSv1.3)が選択されます。- 特定の暗号を削除する場合は、その暗号を省略して暗号のリストを明示的に設定する必要があります。
WebLogicSSLCiphers
ディレクティブで指定された暗号のみが有効になります。 WebLogicSSLCiphers
ディレクティブで構成された暗号のリストに少なくとも1つのサポートされている暗号がある場合、Webサーバーが起動します。サポートされていない暗号がリストに含まれている場合、警告メッセージが表示され、サポートされていない暗号は無視されます。- TLSv1.2(以下)とTLSv1.3の両方の暗号は、
WebLogicSSLCiphers
ディレクティブを使用して構成できます。たとえば:WebLogicSSLCiphers TLS_AES_256_GCM_SHA384 ECDHE-ECDSA-AES128-GCM-SHA256
WebLogicSSLVersion
デフォルト: TLSv1.2、TLSv1.3
プロキシ・プラグインとOracle WebLogic Serverの間の通信に使用するSSLプロトコル・バージョンを指定します。この設定は、Webサーバーのssl.conf
ファイルの設定と一致する必要はありません。プロキシ・プラグインは、Oracle WebLogic Serverと通信するために独自のSSLバージョンを持つことができます。
使用できる値は次のとおりです。
TLSv1_1
またはTLSv1.1
: TLS v1.1を使用しますTLSv1_2
またはTLSv1.2
: TLS v1.2を使用しますTLSv1_3
またはTLSv1.3
: TLS v1.3を使用します(Linux上のApache HTTP Serverにのみ適用可能)。
たとえば:
WebLogicSSLVersion TLSv1_2 TLSv1_3
スペース区切りのリストを使用して、複数のプロトコルを定義できます。選択したSSLプロトコル・バージョンは、プロキシ・プラグインからOracle WebLogic Serverへのすべての接続に使用されます。したがって、このパラメータはグローバル・スコープで定義してください。
構成されていない場合、プロキシ・プラグインは、プロキシ・プラグインとOracle WebLogic Serverの両方でサポートされている最適なプロトコルを使用します。
ノート:
- プロキシ・プラグインの14.1.1.0.0リリースでは、構成されているTransport Layer Security (TLS)プロトコルのデフォルトの最小バージョンはTLSv1.2です。本番環境でTLS V1.2以降を使用することをお薦めします。プロキシ・プラグインとOracle WebLogic Serverの間の通信用にTLSv1.1プロトコルを構成することは可能です。ただし、このプロトコルが構成されると、プロキシ・プラグインは警告メッセージをスローします。
- TLSv1.1を構成するには、暗号スイートを明示的に構成する必要があります。TLSv1.1と互換性のある暗号スイートは、AES128-SHAおよびAES256-SHAです。暗号スイートの構成の詳細は、「WebLogicSSLCiphers」を参照してください。
WebLogicSSLCiphers
がTLSv1.3暗号に設定され、WebLogicSSLVersion
がTLSv1.2に設定されている場合、またはその逆の場合、サーバーの起動中に次のエラー・メッセージがスローされます:Error: No available SSL version. Possible Mismatch between the configured protocol(s) and cipher(s)
WLSSLCheckCn
デフォルト: OFF
スコープ: ロケーション、サーバー・コンテキスト
WebLogicHost
またはWebLogicCluster
ディレクティブを使用して構成されたホスト名が、SSL証明書のDistinguished Names
またはsubjectAltName
拡張のCommon Name
属性と一致する必要があります。- ここで参照されるSSL証明書は、リクエストを処理するOracle WebLogic Server管理対象サーバー用に構成された証明書です。
WLSSLWallet
デフォルト: none
スコープ: サーバー・コンテキスト、仮想ホスト・コンテキスト
WLSSLWallet
は、Oracle WebLogic ServerのSSLの構成方法に基づいて一方向または双方向SSLを実行します。export_walletプログラムは、ファイル・システム上のPEM形式のファイルにウォレットをエクスポートします。ユーザー指定のウォレットごとに、自動ログイン・ウォレットが存在する同じファイル・システム・パスに3つのファイルを作成できます:
key.PEM
: 秘密キーがウォレットに存在する場合のPEM形式の秘密キーを含むパスフレーズ保護ファイル。user.crt
: ユーザー証明書がウォレットに存在する場合のPEM形式のユーザー証明書。trusted_certs.crt
: PEM形式の信頼できる証明書チェーン。
Oracleウォレット(SSOウォレット・ファイルを含む)のパスを引数として設定します。たとえば:
WLSSLWallet "${ORACLE_INSTANCE}/config/fmwconfig/components/${COMPONENT_TYPE}/instances/${COMPONENT_NAME}/keystores/default"