この付録では、オラクル社が開発したOHSによってサポートされているモジュールで使用できるディレクティブについて説明します。これらの項目が含まれます。
注意: この付録で説明するディレクティブは、オラクル社が開発したモジュール専用です。OHSには、多数のApache HTTP Serverおよびサード・パーティのモジュールも即時利用できるように組み込まれています。これらのモジュールのリストおよびそれらのドキュメントへのリンクは、第3章の「Oracle HTTP Server内のApache HTTP Serverおよびサード・パーティのモジュール」を参照してください。 |
mod_certheadersには次のディレクティブを使用できます。
CGI環境変数に変換する必要があるヘッダーを指定します。これは、AddCertHeaderディレクティブを使用して実行できます。このディレクティブは単一の引数を取ります。この引数は、受信リクエストのHTTPヘッダーから移入する必要があるCGI環境変数です。たとえば、SSL_CLIENT_CERT CGI環境変数を移入します。AddCertHeaderは通常、OHSの前でWebキャッシュに使用されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
注意: シミュレートされたSSL接続をWebLogic Serverに渡す必要がある場合、AddCertHeaderはmod_wl_ohsを指定して使用することもできます。そのモジュールのディレクティブWLProxySSLPassThroughにより、確実に証明書がバックエンドに渡されます(SSL接続が実際のものかシミュレートされたものかは関係ありません)。 |
mod_certheadersを使用すると、特定のリクエストがHTTP経由で受信された場合でも、HTTPS経由で受信されたかのようにそれらのリクエストを扱うように、Oracle HTTP Serverに指示することができます。これは、Oracle HTTP Serverがリバース・プロキシまたはロード・バランサのフロントエンドになっている場合に役立ちます。リバース・プロキシまたはロード・バランサは、SSLリクエストの終端点の機能を果たし、HTTPS経由でOracle HTTP Serverにリクエストを転送します。また、SimulateHttpsはデバイスのロード・バランサ・タイプに使用されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
mod_certheadersにはOpmnHostPortディレクティブを使用できます。
このディレクティブを使用すると、mod_onsintが動作中のOracle HTTP Serverインスタンスをpingするため、OPMNが使用するホスト名とポートを指定できます。OpmnHostPortが指定されていないと、mod_onsintはHTTPポートを自動的に選択します。ただし、状況によっては、OPMNがリスナーのpingに使用するHTTPポートとホスト名に特定のものを選択する場合があります。
カテゴリ | 値 |
---|---|
構文 |
OpmnHostPort host:Port |
例 |
OpmnHostPort localhost:7778 |
デフォルト |
なし |
mod_oradavには次のディレクティブを使用できます。
OraDAVを使用できないOracle HTTP Server環境では、mod_davはHTTPのGETリクエストにレスポンスを返しません。かわりに、GETリクエストには通常のOracle HTTP Serverのメカニズムを使用してレスポンスが返されます。
ORAAllowIndexDetails
パラメータは、DAVコレクションに対するGETリクエストが実行され、ディレクトリ内でindex.html
ファイルが見つからない場合に、OraDAVがレスポンスを返す方法を制御します。典型的なOracle HTTP Server環境では、別のモジュールが制御を引き継ぎ、そのコレクション内のリソース(ファイル)の索引を表すクライアントHTMLを自動的に生成してレスポンスを返します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
false |
ORAUserパラメータで指定したユーザーのパスワードを指定します。OraAltPassword
では、BASE64エンコード文字列を使用します。パスワードをエンコードされない平文のままORAUser
パラメータとともに表示することを避ける場合、このパラメータで代替パスワードを提供します。ORAPasswordパラメータを指定しない場合、この値がパスワードに使用されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
次の要件に従って、ディスク・キャッシュ操作に使用するディレクトリを指定します。
指定されたディレクトリが存在し、Oracle HTTP Serverによって読取り可能である必要があります。ただし、通常のGETリクエストでは表示できないようにする必要があります。このディレクトリが通常のGETリクエストで表示できると、キャッシュ・ディレクトリにアクセスするユーザーがセキュリティ対策を迂回する可能性があります。
このディレクトリは、最終アクセス時刻がサポートされているファイル・システム上に置く必要があります。Microsoft Windowsシステムの場合、これはFATではなくNTFSでフォーマットされたパーティションを使用することを意味します。
キャッシュ・ディレクトリをキャッシュ以外の目的に使用することはできません。キャッシュ・ディレクトリ内のファイルは、削除されることがあります。
ORACacheDirectory
パラメータを使用する場合は、ORACacheTotalSizeパラメータも使用する必要があります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
使用しない場合、OraDAV操作のディスク・キャッシュは実行されません。 |
ディスク・キャッシュ操作用のキャッシュ可能な最大リソース・サイズを指定します。整数の後にキロバイト(KB)またはメガバイト(MB)を指定できます。整数の後に単位を指定しない場合、デフォルトの単位はバイトです。
このパラメータにより、Web管理者は大きなメディア・ファイルによってキャッシュが独占されるのを防ぐことができます。ただし、キャッシュするファイルが大きい場合の方が、パフォーマンスは向上します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
キャッシュがいっぱいになった場合に解放する際の、ディスク・キャッシュの使用率を指定します。ディスク・キャッシュがいっぱいになると、キャッシュのディスク使用率がORACachePrunePercent
の値に減少するまで、キャッシュ内の最も古いファイルから順に削除されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
25 |
ディスク・キャッシュ操作に使用するキャッシュのサイズを指定します。整数の後にMB(メガバイト)またはGB(ギガバイト)を指定できます。整数の後に単位を指定しない場合、デフォルトの単位はバイトです。
ORACacheDirectoryパラメータを使用する場合は、ORACacheTotalSize
パラメータも使用する必要があります。
ORACacheTotalSize
値は、Webサイトの重要な部分、または最もアクセス頻度の高い全ファイルに25%以上の領域を追加したもののうち、どちらかを十分に保持できる大きさにする必要があります。値が小さすぎる場合、BLOBデータをファイル・システムに書き込み、新しいキャッシュ・リクエストを受信するためにファイルを削除するという追加の処理が発生するため、全体のパフォーマンスが低下します。
実際にディスク・キャッシュに使用される領域は、ORACacheTotalSize
値を超えて最大ORACacheMaxResourceSize値に達する場合があります。また、ファイル・システムのブロック・サイズが原因となって、キャッシュが使用するディスク領域がORACacheTotalSize
値を超えることのないよう注意してください。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
接続先のOracle Databaseを指定します。ORAConnect
パラメータを使用すると、tnsnames.ora
ファイルに含まれていないデータベースに接続できます。値には次の書式を使用する必要があります。
Oracle Databaseに接続するには、ORAConnect、ORAConnectSNまたはORAServiceパラメータのうち、いずれか1つのみを指定する必要があります。tnsnames.ora
ファイルに含まれるデータベースに接続するには、ORAServiceパラメータを使用します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
接続先のOracle Databaseを指定します。ORAConnectSN
パラメータを使用すると、tnsnames.ora
ファイルに含まれていないデータベースに接続できます。このパラメータの値は文字列で、次の書式を使用する必要があります。
Oracle Databaseに接続するには、ORAConnectまたはORAServiceパラメータのうち、いずれか1つのみを指定する必要があります。tnsnames.ora
ファイルに含まれるデータベースに接続するには、ORAServiceパラメータを使用します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
ORAUserパラメータで指定されたデータベース・ユーザー(スキーマ)内に、PL/SQパッケージとデータベース表のセットであるコンテナが存在している必要があります。これによって、データベースに階層構造でファイルを格納できます。ORAContainerName
パラメータでは、そのロケーションで使用するコンテナの名前を指定します。このパラメータの値は、20文字以下の文字列です。たとえば、<Location/project1>
などです。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
PL/SQLパッケージで例外が発生した場合、Oracle HTTP Serverログ・ファイルerror_logにPL/SQLスタック・ダンプを書き込みます。
カテゴリ | 値 |
---|---|
構文 |
ORAException RAISE|NORAISE |
例 |
ORAException RAISE |
デフォルト |
NORAISE |
注意: このパラメータはデバッグに使用すると便利ですが、大量のディスク領域を使用し、システムのパフォーマンスを低下させる場合があります。 |
1つ以上のファイル拡張子を指定して、実行するのではなく編集のために開くファイルのタイプを識別します。これを使用すると、通常はGET操作の結果として実行されるファイルを編集のために開くことができます。ファイルタイプの入力時に、ドット区切り文字(.)を付加し、カンマを使用してファイル拡張子を区切ります。このパラメータの値は、二重引用符で囲みます。例:
".htm, .html, .jsp1, .jsp2"
このディレクティブは、ファイル・システムへのアクセスにのみ適用されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
.JSP .SQLJSP |
注意:
|
待機時間の長いネットワーク環境で、Microsoft Officeにおけるロックのリフレッシュ動作を調整するために使用します。Microsoft Officeは、ロックが期限切れになる直前にDAVリソースのロックをリフレッシュしようとします。Microsoft OfficeクライアントとDAVサーバーでリフレッシュの間にネットワークの輻輳が発生すると、ロックの期限切れ後にリクエストが着信することがあります。
OraDAVは、期限切れになったリソースのロックを定期的に調べて削除します。ORALockExpirationPad
パラメータを使用すると、ロックが期限切れになってから削除されるまでの期間を追加できます。たとえば、ORALockExpirationPad
を120に設定すると、期限切れ時刻以降少なくとも2分間は、OraDAVでロックが削除されません。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
0 |
OraDAVコマンドの発行時にコールするOraDAVドライバの実装を識別します。デフォルトはOraDAVドライバ、つまりORDSYS.DAV_API_DRIVERパッケージです。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OraDAVドライバ |
ORAUserパラメータで指定したユーザーのパスワードを指定します。
ORAPassword
パラメータでパスワードをエンコードされていない文字列として指定しない場合は、ORAAltPasswordパラメータを使用して、BASE64エンコード文字列としてパスワードを指定できます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
データベース・リポジトリ内のルートとして使用されるディレクトリを指定します。このパラメータを指定した場合、WebDAVクライアントはこのディレクトリをルートとして認識し、このディレクトリに至るリポジトリ・ディレクトリは認識できません。値の末尾にはスラッシュ(/)を含めないでください。
WebDAVクライアントは/thirdディレクトリを認識し、/third/fourthディレクトリにナビゲートできますが、/firstまたは/first/secondディレクトリは認識もナビゲートもできません。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
接続先のOracle Databaseを指定します。tnsnames.ora
ファイル内のSID値と一致する値を指定する必要があります。
Oracle Databaseに接続するには、ORAConnect、ORAConnectSNまたはORAServiceパラメータのうち、いずれか1つのみを指定する必要があります。tnsnames.oraファイルに含まれていないデータベースに接続するには、ORAConnectまたはORAConnectSNパラメータを使用します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
デバッグ用にOracle HTTP Serverエラー・ログに記録するイベントのタイプを指定します。このパラメータの値は、次のいずれかです。
getsource
: ファイル・システムに対するGETアクティビティをトレースします。
hreftoutf8
: ネイティブなキャラクタ・セットからUTF-8へのHREF変換をトレースします。
request
: mod_oradavによって処理されるDAVリクエスト、レスポンスおよびステータス値をトレースします。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
注意: このパラメータはデバッグに使用すると便利ですが、大量のディスク領域を使用し、システムのパフォーマンスを低下させる場合があります。 |
Oracle HTTP Serverエラー・ログに記録するデバッグのレベル(トレース文)を指定します。最低レベルは0
(デフォルト)で、トレースを実行しません。最高レベルは4
で、最大限のトレースを実行します。このパラメータの値は、0
から4
の整数です。
デバッグのレベルとして大きい数値を設定すると、より多くの情報がエラー・ログ・ファイルに書き込まれます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
0 |
注意: このパラメータを大きい数値に設定すると、デバッグの場合には便利ですが、大量のディスク領域を使用するため、システムのパフォーマンスが低下します。 |
ORAConnect、ORAConnectSNまたはORAServiceパラメータで指定したサービスへの接続時に使用するデータベース・ユーザー(スキーマ)を指定します。
CONNECT
RESOURCE
CREATE TABLESPACE
DROP TABLESPACE
CREATE ANY TRIGGER
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
Oracle HTTP Serverに対してSSLを構成するには、使用するmod_ossl
のディレクティブをhttpd.conf
ファイルに入力します。
この項で説明するディレクティブは、次のとおりです。
SSLアクセラレータが使用されるかどうかを指定します。現在サポートされているのは、nFastカードのみです。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
SSLAccelerator yes |
デフォルト |
|
注意:
|
証明書を発行したCA(認証局)からの証明書失効リスト(CRL)をまとめるファイルを指定します。このリストは、クライアント認証に使用されます。このファイルは、PEMでエンコードされた様々なCRLファイルを優先順位の順に連結したものです。このディレクティブは、SSLCARevocationPathの代替または補助用に使用できます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
PEMでエンコードされている証明書失効リスト(CRL)が格納されるディレクトリを指定します。CRLは、証明書の発行元のCA(認証局)から届きます。CRLのいずれかに記載されている証明書を使用してクライアントが自身を認証しようとすると、証明書は取り消され、そのクライアントはサーバーに対して自身を認証できなくなります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
クライアントがSSLハンドシェイク時に使用できるSSL暗号スイートを指定します。このディレクティブでは、コロンで区切られた暗号指定文字列を使用して暗号スイートを識別します。表11-2は、必要な暗号スイートを記述するためにこの文字列で使用できるタグを示しています。SSLCipherSuiteには次の値を使用できます。
none: リストに暗号を追加します。
+: リストに暗号を追加し、リスト内の正しい位置に配置します。
-: リストから暗号を削除します(後で追加できます)。
!: リストから暗号を永続的に削除します。
タグは、暗号指定文字列を構成する接頭辞と結合されます。表E-1および表E-2に、暗号スイートのタグを示します。
カテゴリ | 値 |
---|---|
例 |
この例では、低強度暗号とDiffie-Hellman鍵交換アルゴリズムを使用する暗号を除く、すべての暗号が指定されています。 |
構文 |
|
デフォルト |
|
機能 | タグ | 意味 |
---|---|---|
鍵の交換 |
|
|
鍵の交換 |
|
RSA鍵を使用したDiffie-Hellman鍵の交換 |
認証 |
|
認証なし |
認証 |
|
|
認証 |
|
Diffie-Hellman認証 |
暗号化 |
|
暗号化なし |
暗号化 |
|
|
暗号化 |
|
Triple |
暗号化 |
|
|
データの整合性 |
|
|
データの整合性 |
|
|
別名 |
|
すべてのSSL V3.0暗号 |
別名 |
|
すべての輸出暗号 |
別名 |
|
すべての40ビット輸出暗号のみ |
別名 |
|
すべての56ビット輸出暗号のみ |
別名 |
|
すべての低強度暗号(輸出暗号とSingle- |
別名 |
|
128ビット暗号化を使用したすべての暗号 |
別名 |
|
Triple- |
別名 |
|
|
別名 |
|
Diffie-Hellman鍵交換を使用したすべての暗号 |
注意: 輸出版のブラウザが使用される場合は、制限があります。Oracleモジュール |
表E-2 Oracle Advanced Security 10iでサポートされている暗号スイート
暗号スイート | 認証 | 暗号化 | データの整合性 |
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SSLプロトコル・エンジンの使用を切り替えます。通常は<VirtualHost>
セクションの中で使用し、特定の仮想ホストに対してSSLを有効にします。デフォルトでは、SSLプロトコル・エンジンは、メイン・サーバーとすべての構成済仮想ホストの両方で無効にされています。例11–1は、SSLEngineディレクティブの使用例です。デフォルトのSSLは、UNIXでは4443、Windowsでは443です。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
SSLエンジンのログ・ファイルが書き込まれる場所を指定します。(エラー・メッセージは、ErrorLogディレクティブにより指定されたOracle HTTP Server標準ログ・ファイルにも重複して書き込まれます。)
このファイルは、シンボリック・リンク攻撃に使用されないように、ルートのみが書き込める場所に配置します。このファイル名の先頭にスラッシュ(/)がない場合は、ServerRootへの相対ファイル名とみなされます。ファイル名の先頭に縦線(|)がある場合は、縦線に続く文字列が、信頼できるパイプを確立できる実行可能プログラムへのパスと想定されます。
このディレクティブは、仮想サーバーの構成ごとに1回のみ使用できます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
SSLエンジン・ログ・ファイルの冗長性レベルを指定します。程度、またはレベルは次のとおりです(昇順に記述されていて、各レベルはその前述のレベルに含まれます)。
none
: 専用のSSLログは記録されません。タイプがerrorのメッセージは、ErrorLog
ディレクティブにより指定されたHTTPサーバー標準ログ・ファイルに重複して書き込まれます。
error
: タイプがerror(処理を停止する状態)のメッセージのみがログに記録されます。
warn
: 致命的ではない問題(処理を停止しない状態)を通知するメッセージがログに記録されます。
info
: 主要な処理アクションを要約したメッセージがログに記録されます。
trace
: 重要度の低い処理アクションを要約したメッセージがログに記録されます。
debug
: 開発操作と低レベルI/O操作を要約したメッセージがログに記録されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
Oracle HTTP Serverプロセス間で同期化する必要がある操作の、SSLエンジンによる相互排他を行うために使用するセマフォ(ロック)のタイプ。使用できる値は次のとおりです。
none
: mutexは使用されません。mutexによりSSLセッション・キャッシュへの書込みアクセスが同期化されるため、この設定はお薦めしません。mutexを構成しない場合、セッション・キャッシュが不整合になります。
file:
path/to/mutex: ロック用のファイルを使用します。ファイル名が確実に一意になるように、Oracle HTTP Serverの親プロセスのプロセスID (PID)が、ファイル名に追加されます。このファイル名の先頭にスラッシュ(/)がない場合は、ServerRoot
への相対ファイル名とみなされます。この設定はWindowsでは使用できません。
sem
: 書込みの同期化にオペレーティング・システムのセマフォを使用します。UNIXではSys V IPCセマフォ、WindowsではWindows Mutexが使用されます。オペレーティング・システムがサポートしている場合は、これが最善の選択肢です。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
ディレクトリ単位で様々なランタイム・オプションを制御します。一般に、1つのディレクトリに複数のオプションが適用される場合は、最も包括的なオプションが適用されます(オプションはマージされません)。ただし、SSLOptions
ディレクティブのすべてのオプションの前にプラス(+)またはマイナス(-)符号が付いている場合は、オプションがマージされます。プラスが前に付いているオプションは、現在有効なオプションに追加され、マイナスが前に付いているオプションは、現在有効なオプションから除外されます。
使用できる値は次のとおりです。
StdEnvVars
: SSLに関連するCGI/SSI環境変数の標準セットを作成します。抽出操作はCPU時間が長くかかること、また静的コンテンツを提供するときには一般に適用されないことから、これはデフォルトでは無効になっています。一般に、この値はCGI/SSIリクエストの場合にのみ有効にします。
ExportCertData
: 次の追加CGI/SSI変数を有効にします。
SSL_SERVER_CERT
SSL_CLIENT_CERT
SSL_CLIENT_CERT_CHAIN_n
(ここでn= 0, 1, 2...)
これらの変数には、現在のHTTPS接続のサーバーおよびクライアント用にPrivacy Enhanced Mail (PEM)でエンコードされたX.509証明書が含まれています。CGIスクリプトではこれを使用して、より詳しい証明書チェックを行うことができます。クライアント証明書連鎖の他の証明書がすべて提供されます。このオプションを使用するとパフォーマンスに時間がかかるため、デフォルトではOffになっています。
SSL_CLIENT_CERT_CHAIN_n
変数の順序は、次のようになります。SSL_CLIENT_CERT_CHAIN_0
は、SSL_CLIENT_CERT
を署名する中間的なCAです。SSL_CLIENT_CERT_CHAIN_1
は、SSL_CLIENT_ROOT_CERT
をルートCAとして、SSL_CLIENT_CERT_CHAIN_0
などを署名する中間的なCAです。
FakeBasicAuth
: クライアントのX.509証明書の対象識別名をHTTP Basic認証のユーザー名に変換します。これは、標準のHTTPサーバー認証方式がアクセス制御に使用できることを意味します。ユーザーからはパスワードが取得されず、文字列passwordが置き換えられることに注意してください。
StrictRequire
: SSLRequireSSLまたはディレクティブに従ってアクセスを禁止する必要がある場合にアクセスを拒否します。StrictRequire
を指定しないと、Satisfy any
ディレクティブ設定がSSLRequire
またはSSLRequireSSL
ディレクティブをオーバーライドして、クライアントがホスト制約を渡した場合、または有効なユーザー名とパスワードを指定した場合に、アクセスが許可されてしまう可能性があります。
このように、SSLRequireSSL
またはSSLRequire
をSSLOptions +StrictRequire
と組み合せることで、mod_ossl
はあらゆる場合にSatisfy any
ディレクティブをオーバーライドできます。
CompatEnvVars
: Apache SSL 1.x、mod_ssl
2.0.x、Sioux 1.0およびStronghold 2.xとの下位互換性のために、廃止された環境変数をエクスポートします。これは、既存のCGIスクリプトに対する互換性を提供するために使用します。
OptRenegotiate
: SSLのディレクティブがディレクトリ単位のコンテキストで使用されるときに、最適化されたSSL接続再ネゴシエーション処理を有効にします。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
ウォレット・アクセス用のパスフレーズ・ダイアログのタイプ。mod_ossl
では、ウォレットにアクセスするために管理者にパスフレーズの入力が要求されます。使用できる値は次のとおりです。
builtin
: サーバー起動時に、mod_ossl
は各ウォレットのパスワードの入力を求めます。
この設定は、Oracle HTTP ServerがOPMNにより管理されている場合は使用できません。Oracle HTTP ServerがOPMNにより起動される場合、ユーザー操作は許可されません。
exec:
path/to/program
- サーバー起動時に、mod_ossl
は各ウォレット用に構成されている外部プログラムをコールします。このプログラムは、servername:portnumberと、RSA
またはDSA
という2つの引数を使用して起動されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
mod_ossl
がサーバー環境を設定するときに使用するSSLプロトコルを指定しますクライアントは、指定されたプロトコルのいずれかでのみ接続できます。使用できる値は次のとおりです。
SSLv2
SSLv3
TLSv1
All
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
任意の複合ブール式がTRUEでないかぎり、アクセスを拒否します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
式の理解
expressionは、次の構文と一致する必要があります(BNF構文表記として示してあります)。
expr ::= "true" | "false" "!" expr expr "&&" expr expr "||" expr "(" expr ")" comp ::=word "==" word | word "eq" word word "!=" word |word "ne" word word "<" word |word "lt" word word "<=" word |word "le" word word ">" word |word "gt" word word ">=" word |word "ge" word word "=~" regex word "!~" regex wordlist ::= word wordlist "," word word ::= digit cstring variable function digit ::= [0-9]+ cstring ::= "..." variable ::= "%{varname}"
表E-3と表E-4に標準変数とSSL変数を示します。これらの値がvarnameの有効値です。
function ::= funcname "(" funcargs ")"
funcname
には、次の関数を使用できます。
file(filename)
file関数は文字列引数(ファイル名)を1つ取り、そのファイルの内容に拡張します。これは、正規表現に照らしてファイルの内容を評価する場合に役立ちます。
表E-3には、SSLRequireのvarnameの標準変数を示します。
標準変数 | 標準変数 | 標準変数 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
表E-4には、SSLRequireのvarnameのSSL変数を示します。
SSL変数 | SSL変数 | SSL変数 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SSLを使用していないクライアントに対してアクセスを拒否します。構成エラーにより、セキュリティがぜい弱になる可能性があるSSL対応の仮想ホストまたはディレクトリの完全保護に役立つディレクティブです。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
SSLRequireSSL |
デフォルト |
なし |
グローバル・セッションまたはプロセス間セッションのセッション・キャッシュ・ストレージ・タイプを指定します。キャッシュは、リクエストのパラレル処理を高速化するオプションの方法を提供します。使用できる値は次のとおりです。
none
: グローバルまたはプロセス間セッション・キャッシュを無効にします。機能に対する影響はありませんが、パフォーマンスに大きな差が出ます。
shmht:
/path/to/datafile[bytes]: RAM内の共有メモリー・セグメントの中で、高パフォーマンス・ハッシュテーブルを使用します(bytes
はおおよそのサイズを指定)。このテーブルは、/path/to/datafile
により設定されます。このハッシュテーブルは、サーバー・プロセスのローカルSSLメモリー・キャッシュと同期化します。
shmcb:
/path/to/datafile[bytes]: 高パフォーマンスのShared Memory Cyclic Buffer (SHMCB)セッション・キャッシュを使用して、サーバー・プロセスのローカルSSLメモリー・キャッシュと同期化します。shmcb
のパフォーマンスの方が、shmht
に比べて、すべての環境で均一です。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
セッション・キャッシュ内でSSLセッションの有効期限が満了になるまでの秒数を指定します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
300 |
接続時にクライアントが証明書を提示する必要があるかどうかを指定します。使用できる値は次のとおりです。
none
: クライアント証明書は不要です。
optional
: クライアントは有効な証明書を提示できます。
require
: クライアントは有効な証明書を提示する必要があります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
注意:
|
WRLを使用してウォレットの場所を指定します。ファイルパスとして指定されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
注意:
|
同一コンテキスト内に指定されているウォレットのアクセスに必要なウォレット・パスワードを指定します。クリアテキスト・ウォレット・パスワードまたは不明瞭化されたパスワードのいずれかを選択できます。不明瞭化されたパスワードは、コマンドライン・ツールiasobf
を使用して作成されます。標準ウォレットを使用する必要がある場合は、クリアテキスト・パスワードのかわりに不明瞭化されたパスワードを使用することをお薦めします。パスワードが不要の場合は、このディレクティブを設定しないでください。
注意: Oracle Wallet Managerの自動ログイン機能を使用して作成されたウォレットが使用される場合、ウォレットにはパスワードが不要なため、このディレクティブは設定しないでください。 |
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
関連項目: 11-15ページの「iasobfユーティリティの使用」 |
注意: mod_ossoは非推奨です。シングル・サインオンを実行する場合は、Webgateプラグインを使用してください。詳細は、『Oracle® Fusion Middleware Oracle Identity Managementインストレーション・ガイド』のOAMのためのOracle HTTP Server 11g Webゲートのインストールと構成に関する項を参照してください。 |
mod_oddoには次のディレクティブを使用できます。
osso.conf
へのパスを指定します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
Cookieのアイドル・タイムアウトを有効にするかどうかを指定します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
OHSが無視するURLを識別します。
ALLを指定すると、すべてのURLが無視されます。
querystringを指定すると、問合せ文字列に一致するURLが無視されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
または
|
デフォルト |
URLは無視されません。 |
このディレクティブをONに設定すると、弱い形式のIPスプーフィング・チェックが有効になります。受信IPアドレスが、ClientIPヘッダー値と照合されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
URI認証が設定された場所でそのURI認証を有効にするかどうかを指定します。ONにすると、URI認証が有効になります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
アプリケーションが動的ssoディレクティブを介してそのアプリケーション自体を保護する場合に、Cookieを作成するかどうかを指定します。ONにすると、このCookieが作成されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
フォームによるリダイレクトを有効にするかどうかを指定します。ONにすると、リダイレクトが有効になります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
セキュアなCookieを有効にするかどうかを指定します。ONに設定すると、これらのCookieが有効になります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
ON |
静的に保護されたページに対して、このディレクティブが次のヘッダーを送信するかどうかを指定します。
Pragma: no-cache
Cache-Control: no-store
Surrogate-Control: no-store
Expires: Thu, 01 Jan 1970 12:00:00 GMT
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
ON |
モジュールによって作成されたCookieのHTTPOnlyを設定するかどうかを指定します。ONにすると、HTTPOnlyが設定されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
ON |
次の各項で、mod_plsql構成パラメータについて説明します。
plsql.conf
ファイルでは、次のパラメータを使用します。
mod_plsqlモジュールのDynamic Monitoring Service (DMS)を有効にします。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
mod_plsqlモジュールのデバッグ・レベル・ログを有効にします。デバッグ・レベル・ログは、デバッグ専用に使用されます。
ロギングが有効になると、Oracle HTTP Serverログ・ファイルは通常、ORACLE_INSTANCE
/diagnostics/logs/OHS/config/OHS/
component_name
ディレクトリ内に作成されます。ただし、最終的な場所はPlsqlLogDirectory内に指定された場所によって決まります。
このパラメータは、Oracleサポート・サービスよりmod_plsqlモジュール問題のデバッグ指示がないかぎり、Off
に設定しておきます。
mod_plsqlモジュールの内部処理の詳細を表示する場合は、このディレクティブをOn
に設定します。Onに設定すると、mod_plsqlモジュールは処理されるすべてのリクエストのロギングを開始します。ログ・ファイルは、PlsqlLogDirectoryディレクティブで指定された場所に生成されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
デバッグ・レベル・ログが書き出されるディレクトリを指定します。
ロギングが有効なときにログ・ファイルが生成される場所のディレクトリ名を設定します。このディレクトリの場所について混乱が生じないように、絶対パスの使用をお薦めします。
UNIXでは、httpd
子プロセスの所有者がこのディレクトリに対する書込み権限を持っている必要があります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
アイドル・データベース・セッションがmod_plsqlモジュールによりクローズされてクリーンアップされるまでの時間(分数)を指定します。
このディレクティブは、mod_plsqlモジュール内でデータベース接続とセッションの接続プーリングとともに使用されます。セッションがある一定の期間使用されないと、そのセッションはクローズされて解放されます。これは、使用されていないセッションをクリーンアップし、データベース側でメモリーが解放されるようにするためです。
この時間を小さい値に設定すると、使用されていないデータベース・セッションのクリーンアップが高速になります。ただし、極端に小さい値に設定すると、mod_plsqlモジュール内の接続プーリングが提供するパフォーマンスに悪影響を及ぼすことがあります。
オープンされているデータベース・セッションの数が重要でない場合は、最大のパフォーマンスが得られるように、このパラメータの値を大きくすることができます。その場合、アクセス頻度が高く、セッション・クリーンアップ間隔に達することがないサイトについては、プーリングされたデータベース・セッションが確実に定期的にリサイクルされるように、DAD構成パラメータPlsqlMaxRequestsPerSessionを調整できます。
ほとんどのインストールでは、デフォルト値で十分です。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
15(分) |
dads.conf
ファイルには、PL/SQLのデータベース・アクセス・ディスクリプタの構成パラメータが含まれています。(ファイルの場所については表E-1を参照してください。)DADは、mod_plsqlモジュールがデータベース・サーバーに接続してHTTPリクエストを実行する方法を指定する値のセットです。
dads.conf
ファイルでは、次のパラメータを使用します。
|
|
リクエストされたプロシージャのコール後に起動するプロシージャを指定します。これにより、リクエストされたプロシージャがコールされた後にフック・ポイントを置くことができます。これは、リクエストされたプロシージャ内の問題のデバッグ中に、SQLトレース/SQLプロファイルを実行する場合に役立ちます。また、各プロシージャの実行後に特定のコールを確実に行う必要がある場合にも役立ちます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
注意: このパラメータは、デバッグ目的にのみ使用してください。また、このパラメータを使用すると、SQLトレース/SQLプロファイルを停止できます。 |
mod_plsqlモジュールでプロシージャを実行する前に記述する必要があるかどうかを指定します。このパラメータをOn
に設定すると、mod_plsqlモジュールではプロシージャを起動する前に常に記述します。それ以外の場合は、mod_plsqlモジュールが内部的な経験則によりパラメータ・タイプを不正に解析した場合にのみ、プロシージャを記述します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
注意: このパラメータは、デバッグ目的にのみ使用してください。 |
DAD経由でアクセスできるように、使用する認証モードを指定します。PlsqlAuthenticationModeに対して指定できる値は、Basic、SingleSignOn、GlobalOwa、CustomOwa、PerPackageOwaです。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
Basic
はデフォルト・モードであり、PlsqlDatabaseUsernameとPlsqlDatabasePasswordにユーザー名とパスワードが指定されていない場合に、それらの指定を求めるかどうかを決定します。WebDB 2.xアプリケーションにはこの設定が必要です。DADでBasic認証を使用しない場合は、DAD構成に有効なユーザー名とパスワードを含める必要があります。
SingleSignOn
は、シングル・サインオン・サーバーを使用することを指定します。これは、Oracle9iAS Portalを使用するDADに必要です。前述のとおり、指定されたユーザー名とパスワードは、シングル・サインオン・サーバーからのものである必要があります。
GlobalOwa
、CustomOwa
およびPerPackageOwa
は、ごく少数のPL/SQLアプリケーションによってのみ使用されます。カスタム認証を使用すると、データベース・レベルではなくアプリケーション自体でユーザーを認証できます。
認証は、ユーザー記述の認証ファンクションをコールすることで実行されます。カスタム認証では、DADに保存されている静的ユーザー名/パスワードを使用します。動的ユーザー名/パスワード認証と組み合せることはできません。カスタム認証を有効にするには、PlsqlAuthenticationModeの認証のレベルを設定し、認可機能を実装します。
次の点にも注意する必要があります。
DADでBasic認証を使用しない場合は、DAD構成に有効なユーザー名とパスワードを含める必要があります。Basicモードで動的認証を実行する場合は、DADのusernameおよびpasswordパラメータを省略できます。
SingleSignOnモードがサポートされるのは、Oracle Fusion Middlewareのリリースのみで、Oracle PortalおよびOracle Single Sign-Onで使用されます。ほとんどの顧客アプリケーションでは、Basic認証を使用します。カスタム認証モード(GlobalOwa、CustomOwaおよびPerPackageOwa)を使用するPL/SQLアプリケーションは、ごく少数です。
リクエストされたプロシージャのコール前に起動するプロシージャを指定します。これにより、リクエストされたプロシージャがコールされる前にフック・ポイントを置くことができます。これは、リクエストされたプロシージャ内の問題のデバッグ中に、SQLトレース/SQLプロファイルを実行する場合に役立ちます。また、各プロシージャの実行前に特定のコールを確実に行う必要がある場合にも役立ちます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
注意: このパラメータは、デバッグ目的にのみ使用してください。また、このパラメータを使用すると、SQLトレース/SQLプロファイルを起動できます。 |
注意: この構成プロパティが変更されることはほとんどないため、たいていの場合はシステムのデフォルトで間に合います。 |
コレクション・バインド内の要素数のバインド中に使用する丸めサイズを指定します。PL/SQL文の実行中は、Oracle Databaseにより共有SQL領域内でPL/SQL文のキャッシュがメンテナンスされ、同じ文が再び実行される場合はキャッシュされた文が再利用されます。Oracleの一致条件では、文のテキストが同一で、バインド変数のデータ型が一致する必要があります。文字列の型が一致するには正確なバイト・サイズを指定する必要があり、コレクション・バインドの場合もコレクション内の要素数が重要になります。mod_plsqlモジュールでは文が動的にバインドされるため、共有キャッシュのヒット率は低く、ほぼ重複する値で満杯になって、共有領域でラッチの競合が発生する傾向があります。このパラメータでは、バインド長を最も近いレベルにバケット化して、このような影響を軽減します。
すべての数値は昇順で指定する必要があります。最後に指定したサイズに続くバケット・サイズは、最後のサイズの2倍とみなされます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
4,20,100,400 |
このパラメータが関連するのは、配列パラメータを持つプロシージャを使用し、可変個のパラメータをプロシージャに渡す場合のみです。
ほとんどのPL/SQLアプリケーションの場合は、デフォルトで十分です。
このパラメータの変更が必要かどうかを調べるには、SQL領域内でSQL文のバージョン番号をチェックします。
より大きい構成値の後は、mod_plsqlが必要に応じて最後の値を2倍にすることによって、さらに大きな値のバケット・サイズの自動生成を開始します。したがって、400の次のバケット値は800、その次は1600、のように続いていきます。
問題を軽減するために、パラメータの受渡しを柔軟にすることを考慮してください。
注意: この構成プロパティが変更されることはほとんどないため、たいていの場合はシステムのデフォルトで間に合います。 |
コレクション・バインド内の要素数のバインド中に使用する丸めサイズを指定します。PL/SQL文の実行中は、Oracle Databaseにより共有SQL領域内でPL/SQL文のキャッシュがメンテナンスされ、同じ文が再び実行される場合はキャッシュされた文が再利用されます。Oracleの一致条件では、文のテキストが同一で、バインド変数のデータ型が一致する必要があります。文字列の型が一致するには正確なバイト・サイズを指定する必要があり、コレクション・バインドの場合もコレクション内の要素数が重要になります。mod_plsqlモジュールでは文が動的にバインドされるため、共有キャッシュのヒット率は低く、ほぼ重複する値で満杯になって、共有領域でラッチの競合が発生する傾向があります。このパラメータでは、バインド幅を最も近いレベルにバケット化して、このような影響を軽減します。
すべての数値は昇順で指定する必要があります。最後に指定したサイズに続くバケット・サイズは、最後のサイズの2倍とみなされます。
最後のバケット幅は4000以下にする必要があります。これは、配列のバインド幅を4000以下にするというOCIの制限によるものです。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
このパラメータが関連するのは、配列パラメータを持つプロシージャを使用し、可変個のパラメータをプロシージャに渡す場合のみです。
ほとんどのPL/SQLアプリケーションの場合は、デフォルトで十分です。
このパラメータの変更が必要かどうかを調べるには、SQL領域内でSQL文のバージョン番号をチェックします。
より大きい構成値の後は、mod_plsqlが必要に応じて最後の値を2倍にすることによって、さらに大きな値のバケット・サイズの自動生成を開始します。したがって、400の次のバケット値は800、その次は1600、のように続いていきます。
問題を軽減するために、パラメータの受渡しを柔軟にすることを考慮してください。
PL/SQLプロシージャに渡される環境変数のデフォルト・セットに、CGI環境変数のオーバーライドおよび追加を実行するように指定します。これは、追加、オーバーライドまたは削除する名前/値ペアの複数行からなるディレクティブです。1つのディレクティブに指定できる環境変数は1つのみです。
変数名を指定して、Oracle HTTP Server環境からCGI環境変数を追加できます。CGI環境変数を削除するには、空白に設定します。固有の名前/値ペアを追加するには、構文myname=myvalueを使用します。
カテゴリ | 値 |
---|---|
構文 |
|
デフォルト |
なし |
例 |
|
ここで追加した環境変数は、ファンクションowa_util.get_cgi_env
を介してPL/SQLアプリケーションで使用できます。
mod_plsqlモジュールの接続プールをテストするためのタイムアウトをミリ秒単位で指定します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
10000(ミリ秒) |
PlsqlConnectionValidationがAutomatic
またはAlwaysValidate
に設定されていると、mod_plsqlモジュールはプーリングされたデータベース接続をテストしようとします。このパラメータは、mod_plsqlモジュールが接続は使用できないと判断する前に、テスト・リクエストの完了を待機する最大時間を指定します。
mod_plsqlモジュールが接続プールで終了済接続を検出するために使用するメカニズムを指定します。
注意: この構成プロパティが変更されることはほとんどないため、たいていの場合はシステムのデフォルトで間に合います。 |
パフォーマンス上の理由で、mod_plsqlモジュールはデータベース接続をプーリングします。データベース・インスタンスが停止し、mod_plsqlモジュールがそのインスタンスに対する接続プールを保持していた場合、プーリングされた各データベース接続は、次回リクエストの処理に使用される際にエラーとなります。これは、あるノードが停止しても、他のデータベース処理を実行しているノードではリクエストを正常に処理できる、RACなどの高可用性の構成で問題となります。mod_plsqlモジュールでは、データベース・ノードの停止による障害を検出した後に自己修正するためのメカニズムを提供しています。この自己修正メカニズムは、PlsqlConnectionValidationパラメータによって制御されます。
次に、PlsqlConnectionValidationの有効な値を示します。
Automatic
: mod_plsqlモジュールは、障害(インスタンスの障害)の検出前に作成され、プーリングされたすべてのデータベース接続をテストします。
ThrowAwayOnFailure
: mod_plsqlモジュールは、障害(インスタンスの障害)の検出前に作成され、プーリングされたすべてのデータベース接続を放棄します。
AlwaysValidate
: mod_plsqlモジュールは、リクエストの発行前に作成され、プーリングされたすべてのデータベース接続を常にテストします。このオプションは、各リクエストのパフォーマンス・オーバーヘッドと関連しているため、注意して使用する必要があります。
NeverValidate
: mod_plsqlモジュールは、プーリングされたデータベース接続を一切pingしません。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
mod_plsqlモジュールでは、次のいずれかのエラーが発生すると、データベースは停止していると判断します。
00443 — バックグラウンド・プロセス<string>が起動しませんでした
00444 — バックグラウンド・プロセス<string>の起動中に障害が発生しました。
00445 — バックグラウンド・プロセスが<x>秒後に起動しませんでした。
00447 — バックグラウンド・プロセスに致命的なエラーが発生しました。
00448 — バックグラウンド・プロセスが正常終了しました。
00449 — バックグラウンド・プロセス<string>がエラーで予期せず終了しました
00470 — LGWRプロセスはエラーで終了しました。
00471 — DBWRプロセスはエラーで終了しました。
00472 — PMONプロセスはエラーで終了しました。
00473 — ARCHプロセスはエラーで終了しました。
00474 — SMONプロセスはエラーで終了しました。
00475 — TRWRプロセスはエラーで終了しました。
00476 — RECOプロセスはエラーで終了しました。
00480 — LCK*プロセスはエラーで終了しました。
00481 — LMONプロセスはエラーで終了しました。
00482 — LMD*プロセスはエラーで終了しました。
00484 — LMS*プロセスはエラーで終了しました
00485 — DIAGプロセスはエラーで終了しました
01014 — Oracleのシャットダウン処理中です。
01033 — Oracleの初期化またはシャットダウン中です。
01034 — Oracleは使用できません。
01041 — 内部エラーが発生しました。hostdefエクステンションが存在しません。
01077 — バックグラウンド・プロセス初期化に失敗しました
01089 — 即時シャットダウン処理中 - 操作はできません
01090 — シャットダウン処理中 - 接続はできません
01091 — 強制起動時にエラーが発生しました。
01092 — Oracleインスタンスが終了しました。強制的に切断されます
03106 — 致命的な2タスク通信プロトコル・エラーが発生しました
03113 — 通信チャネルでend-of-fileが検出されました
03114 — Oracleに接続されていません。
12570 — TNS: パケット・リーダーに障害が発生しました。
12571 — TNS: パケット・ライターに障害が発生しました
Oracle Databaseへの接続を指定します。
カテゴリ | 値 |
---|---|
構文 |
stringパラメータは、2番目の引数に応じて次のように変化します。
フォーマット引数を指定しない場合、mod_plsqlモジュールでは、stringがHOST:PORT:SID形式であるか、Oracle Netで解決可能であると想定します。この2つは、指定された文字列にコロンがあるかどうかにより区別されます。 新しいDADでは |
例 |
|
デフォルト |
なし |
データベースが同じOracleホームで稼働している場合、あるいは環境変数TWO_TASKが設定されている場合は、このパラメータを指定する必要はありません。
データベースが別々のOracleホームで稼働している場合、このパラメータは必須です。
データベースに接続できない場合は、次のことを確認します。
DADのユーザー名およびパスワード情報を確認します。
tnsping db_connect_stringを実行し、次のようなコマンドを実行します。
sqlplus DADUsername/DADPassword@db_connect_string
TNS_ADMINが適切に構成されているかどうかを確認します。
HOST:PORT:SERVICE_NAME形式で正しく動作するかどうかを確認します。
TNSリスナーとデータベースが起動され実行されているかどうかを確認します。
このマシンからホストをpingできるかどうかを確認します。
mod_plsqlモジュールの観点からは、TNSFormat
とNetServiceNameFormat
は類似しており、Net8により解決される接続記述子を意味します。TNSFormat
が便宜上提供されているため、エンド・ユーザーはこれを使用して、名前解決がローカルのtnsnames.oraを介して行われることを示します。sqlnet.oraに構成されているLDAP参照を使用して解決が行われる場合は、NetServiceNameFormat
フォーマット指定子の使用をお薦めします。
高可用性をサポートするデータベース(たとえば、Oracle Real Application Clustersデータベースなど)の場合は、ネット・サービス名の解決がLDAPを使用して行われるように、NetServiceNameFormat
の使用をお薦めします。これにより、新規ノードまたは削除されたノードの情報を使用してOracle Internet Directoryを変更することで、mod_plsqlモジュール経由でアクセス可能なRACノードを追加または削除できます。その場合は、データベース・リスナーのHOST:PORT情報をdads.confまたはローカルtnsnames.ora
にハードコードしないことをお薦めします。
データベースへのログインに使用するパスワードを指定します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
PlsqlAuthenticationModeをBasicに設定して動的認証を使用するDADの場合を除き、これは必須パラメータです。
SingleSignOn認証を使用するDADの場合、このパラメータではスキーマの所有者名を使用します。
DADパスワードを手動で構成変更した後に、ORACLE_HOME/bin
にあるdadTool.pl
スクリプトを実行して、DADパスワードを不明瞭化する必要があります。
DADパスワードを不明瞭化するには、次の手順を実行します。
必要に応じて、次のコマンドを使用して、ユーザーをOracleソフトウェアの所有者ユーザー(通常はoracle
)に変更します。
$ su - oracle
現行リリースのOracleホーム・ディレクトリへのパスを指定するようにORACLE_HOME
環境変数を設定して、Perl実行可能ファイルおよびdadTool.pl
スクリプトの場所を含むディレクトリを含むようにPATH環境変数を設定します。
Bourne、Bash、またはKornシェルの場合:
$ ORACLE_HOME=new_ORACLE_HOME_path;export ORACLE_HOME $ PATH=ORACLE_HOME/bin:ORACLE_HOME/perl/bin:$PATH;export PATH
Cまたはtcshシェルの場合:
% setenv ORACLE_HOME new_ORACLE_HOME_PATH % setenv PATH ORACLE_HOME/bin:ORACLE_HOME/perl/bin:PATH
Microsoft Windowsでは、PATHおよびPERL5LIB環境変数を設定します。
set PATH=ORACLE_HOME\bin;ORACLE_HOME\perl\bin;%PATH% set PERL5LIB=ORACLE_HOME\perl\lib
UNIXプラットフォームでは、共有ライブラリ・パス環境変数を設定します。
ORACLE_HOME/lib
またはlib32
ディレクトリを共有ライブラリ・パスに含めます。表E-5に、各プラットフォームに対応するディレクトリおよび環境変数を示します。
表E-5 共有ライブラリ・パスの環境変数
プラットフォーム | 環境変数 | 含めるディレクトリ |
---|---|---|
AIXベース・システム |
LIBPATH |
ORACLE_HOME/lib |
HP-UX PA-RISC |
SHLIB_PATH |
ORACLE_HOME/lib |
Solarisオペレーティング・システム |
LD_LIBRARY_PATH |
ORACLE_HOME/lib32 |
その他のUNIXプラットフォーム(Linux、HP Tru64 UNIXなど) |
LD_LIBRARY_PATH |
ORACLE_HOME/lib |
たとえば、HP-UX PA-RISCシステムの場合、次のようにORACLE_HOME/lib
ディレクトリを含めるようにSHLIB_PATH環境変数を設定します。
$SHLIB_PATH=$ORACLE_HOME/lib:$SHLIB_PATH;export SHLIB_PATH
ディレクトリを、Oracle HTTP Serverの現行リリースのmod_plsql構成ディレクトリに変更します。
cd ORACLE_HOME/bin
次のPerlスクリプトを起動して、DADパスワードを不明瞭化します。
perl dadTool.pl -f dadfilename
dadfilename
はdads.conf
のファイル名で、DADファイルへのフルパスが含まれます。
例:
perl dadTool.pl -f /u01/app/oracle/as11gr1/ORACLE_INSTANCE
/config/OHS/component_name/mod_plsql/dads.conf
データベースへのログインに使用するユーザー名を指定します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
PlsqlAuthenticationModeをBasicに設定して動的認証を使用するDADの場合を除き、これは必須パラメータです。
SingleSignOn認証を使用するDADの場合、このパラメータはスキーマの所有者名です。
URLに何も指定されていない場合にコールするデフォルトのプロシージャを指定します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
Oracle HTTP Serverリライト規則を使用しても、この構成パラメータを設定した場合と同じ結果になります。
これは、ドキュメント表からのドキュメントのダウンロードを開始する、URL内の仮想パスです。たとえば、このパラメータをdocs
に設定すると、次のURLによってこの形式のURLでドキュメントのダウンロード・プロセスが開始されます。
/pls/dad/docs /pls/plsqlapp/docs
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
ドキュメントのアップロードまたはダウンロードを実行しないアプリケーションの場合は、このパラメータを省略します。
ドキュメントのダウンロード開始時にコールするプロシージャを指定します。このプロシージャは、ダウンロード処理用にコールされます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
ドキュメントのアップロードまたはダウンロードを実行しないアプリケーションの場合は、このパラメータを省略します。
すべてのドキュメントのアップロード先となるデータベース内の表を指定します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
ドキュメントのアップロードまたはダウンロードを実行しないアプリケーションの場合は、このパラメータを省略します。
mod_plsqlエラーのエラー・レポート・モードを指定します。
ブラウザから直接実行することが禁じられているプロシージャ、パッケージまたはスキーマ名のパターンを指定します。これは複数行からなるディレクティブで、各パターンを個別の行に指定します。パターンには大/小文字の区別がなく、アスタリスク(*)などのワイルドカードを使用できます。ダイレクトURLアクセスが禁じられるデフォルト・パターンは、次のとおりです。
sys.*
dbms_*
utl_*
owa_util*
owa.*
htp.*
htf.*
wpg_docload.*
このディレクティブを#NONE#
に設定すると、すべての保護が無効になります。この設定は、アクティブなサイトには推奨されないため、指定しないでください。この設定は、デバッグ目的の場合に使用可能です。
このパラメータがオーバーライドされても、デフォルトは有効です。つまり、除外されるパターンのリストにデフォルト・リストを明示的に追加する必要はありません。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
これらは、次のいずれかを含むURLにアクセスできません。
これは、すべての保護が無効になります。この使用方法は、アクティブなサイトには推奨されません。 |
デフォルト |
sys.* dbms_* utl_* owa_util* owa.* htp.* htf.* wpg_docload.* |
mod_plsqlモジュールでは、このパラメータで指定したパターン以外に、次の特殊文字を含むプロシージャ名も使用できません。
タブ
改行
復帰
一重引用符
逆スラッシュ
改ページ
左カッコ
右カッコ
スペース
これは変更できません。
owa_util.get_pageまたはowa_util.get_page_rawを使用して、データベースからフェッチする内容のトリップごとの行数を指定します。
デフォルトで、mod_plsqlモジュールは各行が255バイトのレスポンス出力行を200行フェッチします。レスポンス・バイトがシングルバイトの場合、レスポンス・バッファは最大限まで移入され、1回のラウンドトリップに255×200=51000バイトをパックできます。マルチバイト・データを含むレスポンスの場合は、各行のバイトのパックが理想的にならない場合があり、ラウンドトリップごとに送信されるバイト数が少なくなります。アプリケーションで大きなページを頻繁に生成し、レスポンスが1回のラウンドトリップに収められない場合は、このパラメータを高めに設定することを考慮してください。mod_plsqlモジュールによるメモリー使用量は増加します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
200 |
このパラメータは、パフォーマンスに問題がある場合にのみ変更してください。このパラメータの最小値は28ですが、それより小さくなることはほとんどありません。
このパラメータは、次の場合にのみ変更してください。
平均的なレスポンス・ページが大きく、mod_plsqlモジュールがレスポンスをフェッチするためにデータベースへラウンドトリップする回数を減らす必要がある場合。
使用中のキャラクタ・セットがマルチバイトで、get_pageまたはget_page_rawで1行ごとにフェッチされるバイト数が少ないという問題に対処する必要がある場合。PL/SQL Web ToolKitでの計算は文字ベースであり、マルチバイト・キャラクタの場合、OWAパッケージでは文字の最小のバイト・サイズが想定されるため、各行のサイズが最大値まで変更されることはありません。
mod_plsqlモジュールが追加のパフォーマンス・ロギングを行うために使用するモードを指定します。
InfoDebugモード: より多くの情報がApacheのerror_logに記録されます。これは、Apacheのinfoロギング・レベルとともに使用されます。Apacheのロギング・レベルがこのレベル以上に設定されていない場合は、この設定が無視されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
空 |
このロギング設定は、PL/SQLアプリケーションでの問題のデバッグに役立ちます。
プーリングされたデータベース接続がクローズされて再オープンされる前に処理する必要のある最大リクエスト数を指定します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
1000 |
このパラメータを使用すると、PL/SQLアプリケーションによる長期間のセッション再利用により発生する、メモリーとリソースの問題を軽減できます。
このパラメータは変更しないでください。ほとんどの場合は、デフォルトで十分です。
このパラメータを小さい値に設定すると、パフォーマンスが低下することがあります。使用頻度が低くパフォーマンスが問題にならないDADや、リクエスト数が限られているDADの場合は、小さい値に設定するとメリットが得られることがあります。
このDADの変数NLS_LANGを指定します。このパラメータにより、環境変数NLS_LANGがオーバーライドされます。このパラメータを設定すると、PL/SQL Gatewayは指定されているNLS_LANGを使用してデータベースに接続します。接続後は、指定の言語と地域に切り替えるためにalter sessionコマンドが発行されます。中間層のキャラクタ・セットがデータベースのキャラクタ・セットと一致する場合、mod_plsqlモジュールによりセッション変更コールは発行されません。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
ほとんどのアプリケーションでは、PlsqlTransferModeがCHARに設定されています。これは、PlsqlNLSLanguage内のキャラクタ・セットがデータベースのキャラクタ・セットと一致する必要があることを意味します。ただし、データベースとmod_plsqlモジュールのキャラクタ・セットがどちらも固定サイズで、幅が一致している場合は、キャラクタ・セットが一致していなくてもかまいません。レスポンスのキャラクタ・セットは、常にmod_plsqlモジュールのキャラクタ・セットです。
PlsqlTransferModeがRAWに設定されている場合は、このパラメータを無視できます。
プロシージャ・コールにマップする仮想パスの別名を指定します。これはアプリケーション固有です。このディレクティブは、PlsqlPathAliasProcedureと組み合せて使用します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
パスの別名を使用しないアプリケーションの場合は、このパラメータを省略できます。
URLの仮想パスが、PlsqlPathAliasで構成されたパス別名と一致した場合にコールするプロシージャを指定します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
パスの別名を使用しないアプリケーションの場合は、このパラメータを省略できます。
アプリケーション定義のPL/SQLファンクションを指定します。このファンクションにより、リクエストされたプロシージャのこれ以上の処理を許可および禁止できます。このファンクションは、DADからの実行を禁止されたパッケージおよびプロシージャ・コールをブロック・アウトして、PL/SQLアプリケーションについて厳重なセキュリティを実装する場合に役立ちます。
このパラメータによって定義されるファンクションには、次のプロトタイプが必要です。
booleanfunction_name
(procedure_name
IN varchar2)
procedure_nameパラメータには、リクエストで実行しようとしているプロシージャの名前が含まれます。
たとえば、ブラウザからコールできるすべてのPL/SQLアプリケーション・プロシージャがパッケージmypkg内にある場合、このファンクションの実装は次のようなものになります。
boolean my_validation_check (procedure_name varchar2) is begin if (upper (procedure_name) like upper ('myschema.mypkg%')) then return TRUE else return FALSE end if; end;
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
デフォルトでは、すでにmod_plsqlモジュールは、特定のスキーマおよびパッケージへのダイレクトURLアクセスを禁止しています。詳細は、「PlsqlExclusionList」を参照してください。
アプリケーションに属し、ブラウザからコールできるリクエストのみを許可するように、このファンクションを実装することをお薦めします。
このファンクションは、すべてのリクエストについてコールされるため、できるだけ最適化してください。たとえば、次のようにすることをお薦めします。
前述の例と同じようにこのファンクションが実装されるように、PL/SQLパッケージに名前を付けます。
実装で表参照を実行し、許可するパッケージおよびプロシージャを決定する場合、共有プールにカーソルを固定すると、パフォーマンスが改善されることがあります。
PlsqlAuthenticationModeがSingleSignOnに設定されている場合、Cookie名を指定します。このパラメータがサポートされるのは、Oracle Fusion Middlewareのリリースのみで、Oracle PortalおよびOracleシングル・サインオンで使用されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
DAD名と同じ |
DADでSingleSignOn認証を使用しない場合は、このパラメータを省略できます。他のほとんどの場合は、セッションのCookie名を省略する必要があります(また、このパラメータはデフォルトで自動的にDAD名に設定されます)。
セッションのCookie名を指定する必要があるのは、分散Oracle Portal環境に参加する必要があるOracle Portalインスタンスについてのみです。これらのOracle Portalノードを、統合されたクラスタとしてシームレスに参加する必要がある場合は、すべての参加ノードのセッションCookie名が同じであることを確認してください。
独立したOracle Portalノードでは、別のセッションCookie名を使用する必要があります。
各mod_plsqlリクエストの終了時に、パッケージとセッションの状態をクリーンアップする方法を指定します。
StatelessWithResetPackageState
に設定すると、mod_plsqlモジュールは各mod_plsqlリクエストの終了時にdbms_session.reset_package_state
をコールします。これがデフォルトです。
StatelessWithPreservePackageState
に設定すると、mod_plsqlモジュールは各mod_plsqlリクエストの終了時にhtp.init
をコールします。これにより、PL/SQL Web ToolKit内でセッション変数の状態がクリーンアップされます。PL/SQLアプリケーションは、そのアプリケーション固有のセッション状態のクリーンアップを行います。クリーンアップに失敗すると異常動作が発生し、リクエストは以前のリクエストで変更された状態の認識または操作を開始します。
StatelessWithFastResetPackageState
に設定すると、mod_plsqlモジュールは各mod_plsqlリクエストの終了時にdbms_session.modify_package_state(dbms_session.reinitialize)
をコールします。このAPIはStatelessWithResetPackageState
モードより高速であり、一部のラッチ競合問題は回避されますが、このAPIが存在するのはリリース8.1.7.2以上のOracle Databaseのみです。このモードでは、メモリー使用量がデフォルト・モードよりやや多くなります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
旧リリースの値stateful=noまたはstateful=STATELESS_RESETは、StatelessWithResetPackageState
に対応しています。
旧リリースの値stateful=STATELESS_FAST_RESETは、StatelessWithFastResetPackageState
に対応しています。
旧リリースの値stateful=STATELESS_PRESERVEは、StatelessWithPreservePackageState
に対応しています。
mod_plsqlモジュールでは、ステートフル・モードの操作はサポートされません。PL/SQLアプリケーションでステートフル動作を可能にするには、状態をCookieまたはデータベース(あるいはその両方)に保存します。
データベースからのデータをmod_plsqlモジュールに送信するためのモードを指定します。ほとんどのアプリケーションでは、デフォルト値CHAR
を使用します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
このパラメータを変更する必要があるのは、同一のDADからのレスポンスを異なるキャラクタ・セットで返送できるようにする場合のみです。このような場合にはCHAR
モードは使用できません。レスポンス・データが常にデータベースのキャラクタ・セットからmod_plsqlのキャラクタ・セットに変換されるためです。
デフォルトのBLOBデータ型を使用せずに、LONGRAWデータ型としてアップロードするファイルの拡張子を指定します。フィールドのファイル拡張子に複数行からなるディレクティブを指定することで、デフォルトをオーバーライドできます。このフィールドにアスタリスク(*
)の値を指定すると、すべてのドキュメントがLONGRAW型としてアップロードされます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
ドキュメントをアップロードまたはダウンロードしないアプリケーションの場合は、このパラメータを省略できます。
cache.conf
ファイルには、mod_plsqlモジュールに実装されたファイル・システム・キャッシュ機能の構成の設定が含まれています。この構成ファイルが関係するのは、PL/SQLアプリケーションがOWA_CACHE
パッケージを使用して、ファイル・システム内の動的生成コンテンツをキャッシュする場合のみです。
次のパラメータは、cache.conf
ファイルで指定されます。
キャッシュ・ストレージのクリーンアップの開始時刻を指定します。
この設定は、クリーンアップが発生する正確な日と時刻を定義します。頻度は日次、週次および月次に設定できます。
頻度を日次で定義するには、キーワードEveryday
を使用します。クリーンアップは毎日定義された時刻に始まります。たとえば、Everyday 2:00
と指定すると、クリーンアップが毎日午前2時(現地時間)に発生します。
頻度を週次で定義するには、曜日(Sunday
、Monday
、Tuesday
、Wednesday
、Thursday
、Friday
、Saturday
)を使用します。たとえば、Wednesday 15:30
と指定すると、クリーンアップが毎週水曜日の午後3時30分(現地時間)に発生します。
頻度を月次で定義するには、キーワードEverymonth
を使用します。クリーンアップは月の最初の土曜日の定義された時刻に始まります。たとえば、Saturday Everymonth 23:00と指定すると、クリーンアップが毎月最初の土曜日の午後11時(現地時間)に発生します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
Saturday 23:00 |
mod_plsqlモジュールによってキャッシュ・ファイルが書き出されるディレクトリを指定します。このディレクトリは存在している必要があります。存在しない場合、Oracle HTTP Serverは起動しません。
UNIXでは、httpd子プロセスの所有者がこのディレクトリに対する書込み権限を持っている必要があります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
mod_plsqlのキャッシュを有効にします。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
|
アプリケーションでPL/SQL Web ToolkitのOWA_CACHE
パッケージを使用しない場合は、キャッシュを無効にできます。そのような場合は、パフォーマンス上のメリットはほとんどありません。
キャッシュ済ファイルを、キャッシュ・メンテナンスのために削除されるまで、ファイル・システム・キャッシュに置くことができる最大期間(日数)を指定します。
この設定は、キャッシュ・システムに古いコンテンツが含まれないようにするためです。この設定により、古いキャッシュ・ファイルが削除され、新しいファイル用のスペースが作成されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
30(日) |
キャッシュ・ファイルの最大サイズを指定します。
この設定は、1つのファイルがキャッシュ全体を占有できないようにします。一般的には、この値は総キャッシュ・サイズ(PlsqlCacheTotalSizeで指定)の約1から3パーセントに設定することをお薦めします。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
1048576 |
キャッシュ・ディレクトリの合計サイズを指定します。デフォルトは20MBです。
この設定により、キャッシュで使用できる領域の量が制限されます。PL/SQLキャッシュとセッションCookieキャッシュがこのキャッシュ領域を共有します。この設定は厳密な制限ではありません。通常の処理中に、一時的にこの制限を超えることがあります。これは正常な動作です。
クリーンアップ・アルゴリズムでは、この設定を使用してキャッシュ・ファイルをどの程度削減するかを判断します。したがって、実際のスペース上限は、物理的なストレージの最大使用可能サイズです。
このパラメータは、次のように値としてバイト数を取ります。
1MB=1048576バイト
10MB=10485760バイト
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
20971520(バイト) |
mod_wl_ohsには次のディレクティブを使用できます。
|
|
注意: mod_wl_ohsのディレクティブは、mod_wlで使用できるディレクティブと同じです。 |
WebLogic Serverホスト(またはクラスタ内のすべてのサーバー)への接続試行の間にプラグインがスリープする間隔(秒)。この値はConnectTimeoutSecsより小さくします。「HTTP 503: サービスが使用できません」のレスポンスをクライアントに戻す前にプラグインが接続を試行する回数は、ConnectTimeoutSecsをConnectRetrySecsで除算することで算出されます。再試行しないようにするには、ConnectRetrySecsをConnectTimeoutSecsと同じ値に設定します。ただし、プラグインは最低2回接続を試みます。エラー・レスポンスはErrorPageディレクティブを使用してカスタマイズできます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
2 |
プラグインがWebLogic Serverホストへの接続を試行する最大時間(秒)。この値はConnectRetrySecsより大きくします。接続できないまま、何回か再試行(ConnectRetrySecsの項を参照)しても成功しないままConnectTimeoutSecsの期限が切れた場合、「HTTP 503: サービスが使用できません」のレスポンスがクライアントに送られます。エラー・レスポンスはErrorPageディレクティブを使用してカスタマイズできます。
カテゴリ | 値 |
---|---|
構文 |
ConnectTimeoutSecs secs |
例 |
ConnectTimeoutSecs 120 |
デフォルト |
10 |
デバッグ操作で実行するロギングのタイプを設定します。デバッグ情報は、UNIXシステムでは/tmp/wlproxy.logファイルに、Windows NT/2000システムではc:\TEMP\wlproxy.logに書き込まれます。
この場所とファイル名をオーバーライドするには、WLLogFileパラメータを別のディレクトリおよびファイルに設定します。(この場所を変更する他の方法については、WLTempDirパラメータを参照してください。)
このサーバーへログインするユーザーに、tmpまたはTEMPディレクトリへの書き込み権限を割り当てる必要があります。次のいずれかのロギング・オプションを設定します(HFC、HTW、HFWおよびHTCオプションは、たとえばHFC,HTWのようにカンマ区切りにすることで組み合せて入力できます):
ON - プラグインは、情報メッセージおよびエラー・メッセージを記録します。
OFF - デバッグ情報は記録されません。
HFC - プラグインは、クライアントからのヘッダー、情報メッセージおよびエラー・メッセージを記録します。
HTW - プラグインは、WebLogic Serverに送信されたヘッダー、情報メッセージおよびエラー・メッセージを記録します。
HFW - プラグインは、WebLogic Serverから送信されたヘッダー、情報メッセージおよびエラー・メッセージを記録します。
HTC - プラグインは、クライアントに送信されたヘッダー、情報メッセージおよびエラー・メッセージを記録します。
ERR - プラグインのエラー・メッセージのみを出力します。
ALL - プラグインは、クライアントに送信されたヘッダー、クライアントから送信されたヘッダー、WebLogic Serverに送信されたヘッダー、WebLogic Serverから送信されたヘッダー、情報メッセージおよびエラー・メッセージを記録します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
特殊な問合せパラメータ「__WebLogicBridgeConfig」を有効にします。このパラメータは、プラグインから構成パラメータに関する詳細を取得するために使用します。たとえば、DebugConfigInfoを設定して「__WebLogicBridgeConfig」を有効にし、問合せ文字列「?__WebLogicBridgeConfig」を含むリクエストを送信すると、構成情報と実行時統計が収集され、その情報がブラウザに戻されます。この場合、プラグインはWebLogic Serverに接続しません。このパラメータはデバッグにのみ使用するもので、出力メッセージの形式はリリースによって異なります。セキュリティのため、本番システムではこのパラメータをOFFにしてください。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
リクエストがプロキシされるWebLogic ServerのWebアプリケーションのデフォルト・ウェルカム・ページを設定します。
URIが「/」の場合、プラグインは次の手順を実行します。
PathTrimパラメータで指定されたパスを取り除きます。
DefaultFileNameの値を末尾に付加します。
PathPrependで指定された値を先頭に付加します。
これによって、WebLogic Serverからリダイレクトされなくなります。たとえば、DefaultFileNameをwelcome.htmlに設定した場合、HTTPリクエストが「http://somehost/weblogic」であれば、「http://somehost/weblogic/welcome.html」になります。このパラメータが機能するためには、リクエストが転送されるすべてのWebアプリケーションで同じウェルカム・ファイルを指定する必要があります。詳細は、「ウェルカム・ページの構成」を参照してください。
Apacheユーザーのための注意: StrongholdバージョンまたはRavenバージョンを使用する場合は、IfModuleブロックではなくLocationブロックでこのパラメータを定義します。Oracle |
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
オフに設定すると、プラグインはプロキシ設定されたロード・バランシング・リクエストに使用される動的クラスタ・リストを無視し、WebLogicClusterパラメータで指定された静的リストのみを使用します。通常は、このパラメータをオンに設定したままにしてください。
このパラメータをオフに設定した場合、次のような影響があります。
静的リスト内の1つ以上のサーバーが失敗した場合、プラグインは機能していないサーバーへの接続を試行し無駄な時間を費やすことがあるため、パフォーマンスが低下します。
クラスタに新しいサーバーを追加した場合、このパラメータを再定義しないかぎりプラグインは新しいサーバーへリクエストをプロキシ設定できません。WebLogicサーバーは、新しいサーバーがクラスタの一部になると、これらのサーバーを動的サーバー・リストへ自動的に追加します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
ON |
WebサーバーがリクエストをWebLogic Serverに転送できなかった場合に常に表示されるエラー・ページを設定します。ユーザー独自のエラー・ページを作成できます。バックエンド・サーバーが「HTTP 503: サービスが使用できません」レスポンスを返し、フェイルオーバー用のサーバーがない場合、プラグインはエラー・ページにリダイレクトします。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
ファイル・キャッシュが有効かどうかを指定します。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の設定に関係なくプラグインがデータをメモリーに読み込み、フェイルオーバー時にセカンダリへの複写が必要であればこれを使用します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
ON |
プラグインがフェイルオーバーするかどうかを指定します。
ONに設定されている状態で、サーバーがWLIOTimeoutSecsの時間内に応答しない場合、プラグインはフェイルオーバーします(メソッドが同等の場合)。
IdempotentをONに設定している場合も、プラグインはフェイルオーバーされ、サーバーがREAD_ERROR_FROM_SERVERなどのエラーを戻します。
OFFに設定した場合、プラグインはフェイルオーバーしません。Apache HTTP Serverを使用している場合は、複数のURLまたはMIMEタイプに対してこのパラメータを別々に設定できます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
ON |
プラグインとWebLogic Serverの間の接続のプールを有効化します。
Apache prefork mpmを使用している場合、Apache Webサーバーがクラッシュする可能性があります。Apacheのprefork mpmまたはworker mpmを使用している場合は、KeepAliveEnabledをOFFにしてください。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
ON(TRUE) |
プラグインとWebLogic Serverの間のアクティブではない接続を維持する時間を指定します。ここで設定した時間が経過すると、接続が閉じられます。このパラメータを有効にするには、KeepAliveEnabledをtrue (Apache HTTP Serverを使用している場合はON)に設定する必要があります。
このパラメータの値は、管理コンソールのサーバー/HTTPタブで設定される期間フィールドの値、またはKeepAliveSecs属性を使用してサーバーMBeanで設定される値以下である必要があります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
20 |
プロキシを行うときに使用するファイル名のパターンを指定します。このディレクティブはIfModuleブロック内に入力されます。たとえば、MIMEタイプによるプロキシを行う場合、次に示すようにMatchExpressionを使用します。
<IfModule weblogic_module>
MatchExpression *.jsp
WebLogicHost=myHost|paramName=value
</IfModule>
または、パスによるプロキシを行う場合、次のようにMatchExpressionを使用します。
<IfModule weblogic_module>
MatchExpression /weblogic
WebLogicHost=myHost|paramName=value
</IfModule>
次の構文を使用して、MatchExpressionの新しいパラメータを定義することもできます。
MatchExpression *.jsp PathPrepend=/test PathTrim=/foo
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
POSTデータの最大許容サイズ(バイト単位)。コンテンツ長がMaxPostSizeを超えた場合、プラグインによってエラー・メッセージが戻されます。-1に設定した場合、POSTデータのサイズはチェックされません。これは、POSTデータを使用してサーバーを過負荷状態にしようとするサービス拒否攻撃を防ぐために役立ちます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
-1 |
WebLogicClusterパラメータまたはWebLogic Serverから戻される動的クラスタ・リストにあるWebLogic Serverで障害が発生した場合、その障害の発生したサーバーは「bad」とマークされ、プラグインはリスト内の次のサーバーに接続しようとします。
MaxSkipTimeには、プラグインが「bad」とマークされたサーバーへの接続を再試行するまでの時間を設定します。プラグインは、一意のリクエスト(つまり、Cookieのないリクエスト)を受信するたびにリスト内の新しいサーバーに接続しようとします。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
10 |
PathTrimの値が取り除かれた後、リクエストがWebLogic Serverに転送される前に、プラグインによって元のURLの{PATH}の部分の先頭に付加されるパスを指定します。ファイル名を追加する必要がある場合は、PathPrependではなく、DefaultFileNameパラメータを使用する点に注意してください。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
null |
PathTrimは、リクエストがWebLogic Serverに転送される前に、元のURLの{PATH}/{FILENAME}の部分からプラグインによって取り除かれる文字列を指定します。たとえば、URL http://myWeb.server.com/weblogic/fooが解析のためにプラグインに渡され、URLがWebLogic Serverに渡される前にPathTrimが/weblogicを取り除くように設定されている場合、WebLogic Serverに転送されるURLは、http://myWeb.server.com:7001/fooになります。既存のサード・パーティ・サーバーを新しく変換し、プラグインを使用してWebLogic Serverにリクエストをプロキシする場合、/fooへのアプリケーション・パスを変更してweblogic/fooを含むようにする必要があります。PathTrimおよびPathPrependを組み合せて使用すると、このパスを変更できます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
null |
ONに設定すると、Apache HTTP Serverは次を使用して、
(request_rec *)r->the_ request
問合せ文字列をWebLogic Serverに渡します。(詳細は、Apacheドキュメントを参照してください。)この動作は、Netscapeバージョン4.xブラウザが問合せ文字列にスペースのあるリクエストを行う場合に役立ちます。
OFFに設定されている場合、Apache HTTP Serverは(request_rec *)r->argsを使用してWebLogic Serverに問合せ文字列を渡します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
ロード・バランシングに使用可能なWebLogic Serverのリストを指定します。サーバーまたはクラスタのリストは、host:portエントリのリストです。クラスタとシングル・サーバーを組み合せて指定した場合、このパラメータに対して返される動的リストには、クラスタ化されたサーバーのみが含まれます。この派生は、クラスタ化されたバックエンド・サーバーのリストのプロキシまたはクラスタ化されていない管理対象サーバーのインスタンスのロード・バランシングを行う場合に必須です。
プラグインとWebLogic Serverの間にSSLを使用している場合は、ポート番号をSSLリスニング・ポートに設定して、SecureProxyパラメータをONに設定します。
このプラグインは、すべての使用可能なサーバーの間の単純なラウンドロビンを実行します。このプロパティで指定したサーバー・リストが、サーバーとプラグインが保持する動的サーバー・リストの開始点となります。WebLogic Serverとこのプラグインの連携により、クラスタに発生した新規のクラスタ・メンバー、失敗したクラスタ・メンバーおよびリカバリしたクラスタ・メンバーを反映してサーバーのリストが自動的に更新されます。
動的クラスタ・リストの使用を無効化するには、DynamicServerListパラメータをOFFに設定します。
このプラグインはCookie、URLエンコード済セッション、またはPOSTデータに格納されたセッションを含むHTTPリクエストを、最初にCookieを作成したクラスタ内のサーバーに送信します。
カテゴリ | 値 |
---|---|
構文 |
このパラメータの値を指定する構文は、『Oracle WebLogic ServerにおけるWebサーバー1.1プラグインの使用』で説明されているように、プラグインを構成しているWebサーバーに応じて変わります。詳細は、次の項を参照してください。
|
例 |
|
デフォルト |
なし |
HTTPリクエストが転送される、WebLogic Serverホスト(またはWebLogic Serverに定義されている仮想ホスト名)を指定します。WebLogicクラスタを使用している場合、WebLogicHostのかわりにWebLogicClusterパラメータを使用します。このディレクティブは、単一のWebLogic Serverにプロキシする場合は必須です。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
WebLogic Serverホストがプラグイン(または他のサーバー)からの接続リクエストをリスニングするポートを指定します。このディレクティブは、単一のWebLogic Serverにプロキシする場合は必須です。
プラグインとWebLogic Serverの間にSSLを使用している場合は、このパラメータをSSLリスニング・ポートに設定して、SecureProxyパラメータをONに設定します。
WebLogic Clusterを使用している場合は、WebLogicPortのかわりにWebLogicClusterパラメータを使用します
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
プラグインとWebLogic Serverの間の通信に使用するSSLプロトコル・バージョンを選択します。使用できる値は次のとおりです。
SSLv3 : SSL v3を使用します
TLSv1 : TLS v1を使用します
選択されたSSLプロトコル・バージョンは、プラグインからWebLogic Serverへのすべての接続に使用されます。したがって、このパラメータはグローバル・スコープで定義してください。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
構成されていない場合、プラグインとWebLogic Serverの両方でサポートされている最良のプロトコルが使用されます。 |
注意: 非推奨となったCookieNameにかわって、WLCookieNameが使用されます。 |
WebLogic Server WebアプリケーションのWebLogic ServerセッションCookie名を変更する場合、プラグインのこのパラメータを同じ値に変更する必要があります。WebLogicセッションCookie名は、WebLogic固有のデプロイメント記述子の<session-descriptor>
要素で設定されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
WLCookieName |
デフォルト |
JSESSIONID |
プロキシ構成で定義する場合、WebLogic ServerがサーバーのDNS名からIPへのマッピングをリフレッシュする間隔を秒単位で指定します。WebLogic Serverインスタンスを別のIPアドレスに移行する場合に使用できますが、そのサーバーのIPのDNS名は変更されません。この場合、指定したリフレッシュ間隔で、DNSとIPの双方向のマッピングが更新されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
WLDNSRefreshInterval 10 |
デフォルト |
起動時に1回のみルックアップ |
このパラメータを使用すると、特定のリクエストをプロキシ処理から除外できます。このパラメータは、グローバルに定義することも、「場所」タグ・レベルでローカルに定義することもできます。このプロパティをローカルに定義した場合、グローバルなプロパティがオーバーライドされるのではなく、2つのパラメータの集合が定義されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
WLExcludePathOrMimeType |
デフォルト |
なし |
ONに設定されている場合、WLSプラグインは元のURIをクライアントからWebLogic Serverに転送します。OFF (デフォルト)に設定されている場合、WebLogic Serverに送信されたURIは、mod_rewriteまたはその他のWebサーバー・プラグイン・モジュールによって変更されることがあります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
注意: WLIOTimeoutSecsは、HungServerRecoverSecsの新しい名前です。 |
WebLogic Serverからのリクエストへのレスポンスに対するプラグインの待機時間を定義します。プラグインは、サーバーがレスポンスするまでWLIOTimeoutSecsで指定した秒数だけ待機してから、サーバーのレスポンスなしを宣言して、次のサーバーにフェイルオーバーします。この値は、大きな値にしておく必要があります。この値をサーブレットの処理時間より短くした場合は、予期しない結果が発生する場合があります。
最小値: 10
最大値: 制限なし
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
300 |
プラグインがマルチホーム・マシンで動作しているWebLogic Serverインスタンスに接続する場合のバインド先の(プラグインのシステム上の) IPアドレスを定義します。
WLLocalIPを設定しない場合、TCP/IPスタックはソースIPアドレスを選択します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
なし |
Debugパラメータがオンに設定されている場合に生成されるログ・ファイルへのパスとファイル名を指定します。このディレクトリは、このパラメータを設定する前に作成する必要があります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
プロキシ・プラグインまたはHttpClusterServletが一部の他のプロキシまたはロード・バランサで稼働中の連鎖プロキシ設定がある場合、WLProxyPassThroughパラメータを明示的に有効化する必要があります。このパラメータによって、ヘッダーはプロキシの連鎖に渡されるようになります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
次の条件が存在する場合、プラグインとWebLogic Server間のSSL通信を維持するかどうかを指定します。
HTTPクライアント・リクエストがHTTPSプロトコルを指定しています。
リクエストが1つまたは複数のプロキシ・サーバー(WebLogic Serverプロキシ・プラグインを含む)を経由して渡されました。
プラグインとWebLogic Server間の接続でHTTPプロトコルを使用しています。
WLProxySSLをONに設定すると、WebLogic Serverからクライアントに戻されるロケーション・ヘッダーではHTTPSプロトコルが指定されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
Webサーバーとプラグインの前にデプロイしたロード・バランサやその他のソフトウェアがSSL終端点である場合に、その製品が、クライアントからSSLを介して接続されたかどうかに基づいて、WL-Proxy-SSLリクエスト・ヘッダーをtrueまたはfalseに設定したときは、SSLの使用がOracle WebLogic Serverに渡されるように、WLProxySSLPassThroughをONに設定します。
SSL終端点が、プラグインが動作するWebサーバーにある場合、またはロード・バランサがWL-Proxy-SSLを設定しない場合、WLProxySSLPassThroughをOFF (デフォルト)に設定します。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
Oracle WebLogic Serverからの503エラー・レスポンスが、別のサーバーへのフェイルオーバーをトリガーするかどうかを指定します。通常プラグインは、503エラー・レスポンスを受け取ると、別のサーバーへのフェイルオーバーを試行します。WLServerInitiatedFailoverがOFFに設定されている場合、503エラー・レスポンスはただちにクライアントに返されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
ON |
接続中のソケットのタイムアウトを秒単位で設定します。詳細は、ConnectTimeoutSecsおよびConnectRetrySecsを参照してください。この値は、0より大きい必要があります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
2 |
これは、Oracle WebLogic Serverに転送されるリクエストを識別するSetHandler weblogicハンドラ・メカニズムに対する代替策となります。例を次に示します。
<Location /weblogic>
WLSRequest ON
PathTrim /weblogic
</Location>
SetHandler weblogicハンドラのかわりにWLSRequestをONにして使用すると、次のような利点があります。
Webサーバーの処理オーバーヘッドが全般的に低減されます。
WebサーバーのDocumentRootが低速のファイル・システム上にある場合のパフォーマンスの大幅な低下が解決されます。
ファイル・システムの長さ制限が原因でファイル・システムにマッピングできないURIに関する403エラーが解決されます。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
OFF |
次の内容を指定します。
wlproxy.logを作成するディレクトリ。場所が見つからない場合、Windowsの場合はC:/tempに、Unixの場合はすべてのプラットフォームで/tmpにログ・ファイルが作成されます。
POSTデータ・ファイルの_wl_proxyディレクトリの場所。
WLTempDirおよびWLLogFileの両方を設定した場合、wlproxy.logの場所についてはWLLogFileが優先します。_wl_proxyディレクトリの場所は、引き続きWLTempDirによって決まります。
カテゴリ | 値 |
---|---|
構文 |
|
例 |
|
デフォルト |
Debugパラメータを参照してください。 |