ヘッダーをスキップ
Oracle® Fusion Middleware Oracle HTTP Serverの管理
12c (12.1.2)
E48019-03
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

G OHSモジュール・ディレクティブ

この付録では、オラクル社が開発したOHSによってサポートされているモジュールで使用できるディレクティブについて説明します。これらの項目が含まれます。

G.1 mod_certheaders

mod_certheadersには次のディレクティブを使用できます。

G.1.1 AddCertHeader

CGI環境変数に変換する必要があるヘッダーを指定します。これは、AddCertHeaderディレクティブを使用して実行できます。このディレクティブは単一の引数を取ります。この引数は、受信リクエストのHTTPヘッダーから移入する必要があるCGI環境変数です。たとえば、SSL_CLIENT_CERT CGI環境変数を移入します。

カテゴリ

構文

AddCertHeader environment_variable

AddCertHeader SSL_CLIENT_CERT

デフォルト

なし


G.1.2 SimulateHttps

mod_certheadersを使用すると、特定のリクエストがHTTP経由で受信された場合でも、HTTPS経由で受信されたかのようにそれらのリクエストを扱うように、Oracle HTTP Serverに指示することができます。これは、Oracle HTTP Serverがリバース・プロキシまたはロード・バランサのフロントエンドになっている場合に役立ちます。リバース・プロキシまたはロード・バランサは、SSLリクエストの終端点の機能を果たし、HTTPS経由でOracle HTTP Serverにリクエストを転送します。

カテゴリ

構文

SimulateHttps on|off

SimulateHttps on

デフォルト

off


G.2 mod_ossl

Oracle HTTP Serverに対してSSLを構成するには、使用するmod_osslのディレクティブをhttpd.confファイルに入力します。

この項で説明するディレクティブは、次のとおりです。

G.2.1 SSLAccelerator

SSLアクセラレータが使用されるかどうかを指定します。現在サポートされているのは、nFastカードのみです。

カテゴリ

構文

SSLAccelerator yes|no

SSLAccelerator yes

デフォルト

SSLAccelerator no



注意:

SSLAcceleratorディレクティブは非推奨になりました。ウォレットを使用したSSLアクセラレーション・サポートの有効化の詳細は、Oracle Advanced Security管理者ガイド(http://www.oracle.com/technology/documentation)を参照してください。


G.2.2 SSLCARevocationFile

証明書を発行したCA(認証局)からの証明書失効リスト(CRL)をまとめるファイルを指定します。このリストは、クライアント認証に使用されます。このファイルは、PEMでエンコードされた様々なCRLファイルを優先順位の順に連結したものです。このディレクティブは、SSLCARevocationPathの代替または補助用に使用できます。

カテゴリ

構文

SSLCARevocationFile file_name

SSLCARevocationFile ${ORACLE_INSTANCE}/config/fmwconfig/components/${COMPONENT_TYPE}/instances/${COMPONENT_NAME}/keystores/crl/ca_bundle.cr

デフォルト

なし


G.2.3 SSLCARevocationPath

PEMでエンコードされている証明書失効リスト(CRL)が格納されるディレクトリを指定します。CRLは、証明書の発行元のCA(認証局)から届きます。CRLのいずれかに記載されている証明書を使用してクライアントが自身を認証しようとすると、証明書は取り消され、そのクライアントはサーバーに対して自身を認証できなくなります。

カテゴリ

構文

SSLCARevocationPath path/to/CRL_directory/

SSLCARevocationPath ${ORACLE_INSTANCE}/config/fmwconfig/components/${COMPONENT_TYPE}/instances/${COMPONENT_NAME}/keystores/crl 

デフォルト

なし


G.2.4 SSLCipherSuite

クライアントがSSLハンドシェイク時に使用できるSSL暗号スイートを指定します。このディレクティブでは、コロンで区切られた暗号指定文字列を使用して暗号スイートを識別します。表11-2は、必要な暗号スイートを記述するためにこの文字列で使用できるタグを示しています。SSLCipherSuiteには次の値を使用できます。

  • none: リストに暗号を追加します。

  • +: リストに暗号を追加し、リスト内の正しい位置に配置します。

  • -: リストから暗号を削除します(後で追加できます)。

  • !: リストから暗号を永続的に削除します。

タグは、暗号指定文字列を構成する接頭辞と結合されます。表G-1に、暗号スイートのタグを示します。

カテゴリ

SSLCipherSuite ALL:!MD5

この例では、MD5強度暗号を除くすべての暗号が指定されています。

構文

SSLCipherSuite cipher-spec

デフォルト

ALL:!ADH:+HIGH:+MEDIUM:+LOW

表G-1 SSL暗号スイートのタグ

機能 タグ 意味

鍵の交換

kRSA

RSA鍵の交換

鍵の交換

kDHr

RSA鍵を使用したDiffie-Hellman鍵の交換

認証

aNULL

認証なし

認証

aRSA

RSA認証

認証

aDH

Diffie-Hellman認証

暗号化

eNULL

暗号化なし

暗号化

DES

DESエンコード

暗号化

3DES

Triple DESエンコード

暗号化

RC4

RC4エンコード

暗号化

ECC

楕円曲線暗号エンコード

データの整合性

MD5

MD5ハッシュ関数

データの整合性

SHA

SHAハッシュ関数

データの整合性

SHA256

SHA256ハッシュ関数

データの整合性

SHA384

SHA384ハッシュ関数

別名

SSLv3

すべてのSSL V3.0暗号

別名

TLSv1.1

すべてのTLS V1.1暗号

別名

TLSv1.2

すべてのTLS V1.2暗号

別名

LOW

すべての低強度暗号(エクスポートおよびシングルDES)

別名

MEDIUM

128ビット暗号化を使用したすべての暗号

別名

HIGH

Triple-DESを使用したすべての暗号

別名

AES

AES暗号化を使用したすべての暗号

別名

RSA

RSA鍵交換を使用したすべての暗号

別名

DH

Diffie-Hellman鍵交換を使用したすべての暗号


G-2に、Oracle Advanced Security 12.1.2でサポートされている暗号スイートを示します。

表G-2 Oracle Advanced Security 12.1.2でサポートされている暗号スイート

暗号スイート 認証 暗号化 データの整合性

SSL_RSA_WITH_RC4_128_MD5

RSA

RC4 (128)

MD5

SSL_RSA_WITH_RC4_128_SHA

RSA

RC4 (128)

SHA

SSL_RSA_WITH_3DES_EDE_CBC_SHA

RSA

3DES (168)

SHA

SSL_RSA_WITH_AES_128_CBC_SHA

RSA

AES (128)

SHA

SSL_RSA_WITH_AES_256_CBC_SHA

RSA

AES (256)

SHA

RSA_WITH_AES_128_CBC_SHA256

RSA

AES (128)

SHA256

RSA_WITH_AES_256_CBC_SHA256

RSA

AES (256)

SHA256

RSA_WITH_AES_128_GCM_SHA256

RSA

AES (128)

SHA256

RSA_WITH_AES_256_GCM_SHA384

RSA

AES (256)

SHA384

ECDHE_ECDSA_WITH_AES_128_CBC_SHA

RSA

AES (128)

SHA

ECDHE_ECDSA_WITH_AES_256_CBC_SHA

RSA

AES (256)

SHA

ECDHE_ECDSA_WITH_AES_128_CBC_SHA256

RSA

AES (128)

SHA256

ECDHE_ECDSA_WITH_AES_256_CBC_SHA384

RSA

AES (256)

SHA384

ECDHE_ECDSA_WITH_AES_128_GCM_SHA256

RSA

AES (128)

SHA256

ECDHE_ECDSA_WITH_AES_256_GCM_SHA384

RSA

AES (256)

SHA384


G.2.5 SSLEngine

SSLプロトコル・エンジンの使用を切り替えます。通常は<VirtualHost>セクションの中で使用し、特定の仮想ホストに対してSSLを有効にします。デフォルトでは、SSLプロトコル・エンジンは、メイン・サーバーとすべての構成済仮想ホストの両方で無効にされています。例11–1は、SSLEngineディレクティブの使用例です。

カテゴリ

構文

SSLEngine on|off

SSLEngine on

デフォルト

off


G.2.6 SSLFIPS

このディレクティブは、SSLライブラリのFIPS_modeフラグの使用方法を切り替えます。これは、グローバル・サーバー・コンテキスト内に設定される必要があり、競合する設定(SSLFIPS offが続くSSLFIPS onなど)があると構成できません。このモードはすべてのSSLライブラリ操作に適用されます。

カテゴリ

構文

SSLFIPS ON | OFF

SSLFIPS ON

デフォルト

Off


SSLFIPSの変更を構成する場合は、SSLFIPS on/offディレクティブがssl.conf内でグローバルに設定されている必要があります。仮想レベルの構成はSSLFIPSディレクティブ内で無効になっています。したがって、仮想ディレクティブにSSLFIPSを設定するとエラーになります。

SSLFIPSモードでサポートされている暗号スイートは次のとおりです。

  • SSL_RSA_WITH_3DES_EDE_CBC_SHA

  • SSL_RSA_WITH_AES_128_CBC_SHA

  • SSL_RSA_WITH_AES_256_CBC_SHA

  • RSA_WITH_AES_128_CBC_SHA256

  • RSA_WITH_AES_256_CBC_SHA256

  • RSA_WITH_AES_256_GCM_SHA384

  • ECDHE_ECDSA_WITH_AES_128_CBC_SHA

  • ECDHE_ECDSA_WITH_AES_256_CBC_SHA

  • ECDHE_ECDSA_WITH_AES_128_CBC_SHA256

  • ECDHE_ECDSA_WITH_AES_256_CBC_SHA384

  • ECDHE_ECDSA_WITH_AES_128_GCM_SHA256

  • ECDHE_ECDSA_WITH_AES_256_GCM_SHA384

これらの暗号スイートの実装方法の手順は、第G.2.4項「SSLCipherSuite」を参照してください。

G.2.7 SSLInsecureRenegotiation

最初は指定されていたように、SSLプロトコルとTLSプロトコルのすべてのバージョン(TLS/1.2を含めて、これまで)は、ネゴシエーション中の中間者攻撃(CVE-2009-3555)に対して脆弱でした。この脆弱性によって、攻撃者は、Webサーバーで表示される任意の平文をHTTPリクエストの前に付け加えることができます。クライアントとサーバーの両方でサポートされている場合は、この脆弱性を修正するプロトコルの拡張が開発されています。デフォルトでは、セキュアでない再ネゴシエーションは無効化されています。NZ (ssl.renegotiate = "compatible")。このモードによって、脆弱なピアの接続が可能になりますが、再ネゴシエーションはRI/SCSVをサポートしているピアとのみ許可されます。再ネゴシエーションを有効化するには、ssl.confファイルでSSLInsecureRenegotiationを設定します。このモードはNZ (ssl.renegotiate = "insecure")と同等です。このモードによって、脆弱なピアの接続が可能になりますが、再ネゴシエーションはRI/SCSVをサポートしているピアとのみ許可されます。

カテゴリ

構文

SSLInsecureRenegotiation ON | OFF

SSLInsecureRenegotiation ON

デフォルト

Off


SSLInsecureRenegotiationを構成するには、ssl.confファイルを編集して、SSLInsecureRenegotiation ON/OFFをグローバルまたは仮想的に設定し、セキュアでない再ネゴシエーションを有効(または無効)に設定します。

G.2.8 SSLMutex

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が使用されます。オペレーティング・システムがサポートしている場合は、これが最善の選択肢です。

カテゴリ

構文

SSLMutex none | file | sem

SSLMutex sem

デフォルト

なし


G.2.9 SSLNZTraceLogLevel

SSLNZTraceLogLevelは、NZライブラリのエラー・ログに記録されるメッセージの冗長性を調整します。特定のレベルを指定すると、それより上位レベルの重要度のメッセージもすべて報告されます。たとえば、SSLNZTraceLogLevel sslが設定されていると、error、warn、userおよびdebugのログ・レベルのメッセージも報告されます。

SSLNZTraceLogLevelでは次のログ・レベルが使用されます。

  • none: NZトレースが無効

  • fatal: 致命的なエラーが発生してシステムが使用できない状態

  • error: エラー状態

  • warn: 警告状態

  • user: 正常ではあるが、重大な状態

  • debug: デバッグ・レベルの状態

  • ssl: SSLレベルのデバッグ

カテゴリ

構文

SSLNZTraceLogLevel none | fatal | error | warn | user | debug | ssl 

SSLNZTraceLogLevel fatal

デフォルト

なし


G.2.10 SSLOptions

ディレクトリ単位で様々なランタイム・オプションを制御します。一般に、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またはSSLRequireSSLOptions +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接続再ネゴシエーション処理を有効にします。

カテゴリ

構文

SSLOptions [+-] StdEnvVars | ExportCertData | FakeBasicAuth | StrictRequire | CompatEnvVars | OptRenegotiate

SSLOptions -StdEnvVars

デフォルト

なし


G.2.11 SSLPassPhraseDialog

ウォレット・アクセス用のパスフレーズ・ダイアログのタイプ。mod_osslでは、ウォレットにアクセスするために管理者にパスフレーズの入力が要求されます。使用できる値は次のとおりです。

  • builtin: サーバー起動時に、mod_osslは各ウォレットのパスワードの入力を求めます。

  • exec:path/to/program - サーバー起動時に、mod_osslは各ウォレット用に構成されている外部プログラムをコールします。このプログラムは、servername:portnumberと、RSAまたはDSAの2つの引数を使用して起動されます。

カテゴリ

構文

SSLPassPhraseDialog builtin | exec

SSLPassPhraseDialog exec:/usr/local/sbin/pfilter

デフォルト

builtin


G.2.12 SSLProtocol

mod_osslがサーバー環境を設定するときに使用するSSLプロトコルを指定しますクライアントは、指定されたプロトコルのいずれかでのみ接続できます。使用できる値は次のとおりです。

  • SSLv3

  • TLSv1

  • TLSv1.1

  • TLSv1.2

  • All

カテゴリ

構文

SSLProtocol [+-] SSLv3 | TLSv1 | TLSv1.1 | TLSv1.2 | All

SSLProtocol +SSLv3

デフォルト

ALL


G.2.13 SSLProxyCipherSuite

プロキシがSSLハンドシェイク時に使用できるSSL暗号スイートを指定します。このディレクティブでは、コロンで区切られた暗号指定文字列を使用して暗号スイートを識別します。表11-2は、必要な暗号スイートを記述するためにこの文字列で使用できるタグを示しています。SSLCipherSuiteには次の値を使用できます。

  • none: リストに暗号を追加します。

  • +: リストに暗号を追加し、リスト内の正しい位置に配置します。

  • -: リストから暗号を削除します(後で追加できます)。

  • !: リストから暗号を永続的に削除します。

タグは、暗号指定文字列を構成する接頭辞と結合されます。表G-3に、暗号スイートのタグを示します。

カテゴリ

SSLProxyCipherSuite ALL:!MD5

この例では、MD5強度暗号を除くすべての暗号が指定されています。

構文

SSLProxyCipherSuite cipher-spec

デフォルト

ALL:!ADH:+HIGH:+MEDIUM:+LOW

表G-3 SSLProxy暗号スイートのタグ

機能 タグ 意味

鍵の交換

kRSA

RSA鍵の交換

鍵の交換

kDHr

RSA鍵を使用したDiffie-Hellman鍵の交換

認証

aNULL

認証なし

認証

aRSA

RSA認証

認証

aDH

Diffie-Hellman認証

暗号化

eNULL

暗号化なし

暗号化

DES

DESエンコード

暗号化

3DES

Triple DESエンコード

暗号化

RC4

RC4エンコード

暗号化

ECC

楕円曲線暗号エンコード

データの整合性

MD5

MD5ハッシュ関数

データの整合性

SHA

SHAハッシュ関数

データの整合性

SHA256

SHA256ハッシュ関数

データの整合性

SHA384

SHA384ハッシュ関数

別名

SSLv3

すべてのSSL V3.0暗号

別名

TLSv1.1

すべてのTLS V1.1暗号

別名

TLSv1.2

すべてのTLS V1.2暗号

別名

LOW

すべての低強度暗号(エクスポートおよびシングルDES)

別名

MEDIUM

128ビット暗号化を使用したすべての暗号

別名

HIGH

Triple-DESを使用したすべての暗号

別名

AES

AES暗号化を使用したすべての暗号

別名

RSA

RSA鍵交換を使用したすべての暗号

別名

DH

Diffie-Hellman鍵交換を使用したすべての暗号


G-4に、Oracle Advanced Security 12.1.2でサポートされている暗号スイートを示します。

表G-4 Oracle Advanced Security 12.1.2でサポートされている暗号スイート

暗号スイート 認証 暗号化 データの整合性

SSL_RSA_WITH_RC4_128_MD5

RSA

RC4 (128)

MD5

SSL_RSA_WITH_RC4_128_SHA

RSA

RC4 (128)

SHA

SSL_RSA_WITH_3DES_EDE_CBC_SHA

RSA

3DES (168)

SHA

SSL_RSA_WITH_AES_128_CBC_SHA

RSA

AES (128)

SHA

SSL_RSA_WITH_AES_256_CBC_SHA

RSA

AES (256)

SHA

RSA_WITH_AES_128_CBC_SHA256

RSA

AES (128)

SHA256

RSA_WITH_AES_256_CBC_SHA256

RSA

AES (256)

SHA256

RSA_WITH_AES_128_GCM_SHA256

RSA

AES (128)

SHA256

RSA_WITH_AES_256_GCM_SHA384

RSA

AES (256)

SHA384

ECDHE_ECDSA_WITH_AES_128_CBC_SHA

RSA

AES (128)

SHA

ECDHE_ECDSA_WITH_AES_256_CBC_SHA

RSA

AES (256)

SHA

ECDHE_ECDSA_WITH_AES_128_CBC_SHA256

RSA

AES (128)

SHA256

ECDHE_ECDSA_WITH_AES_256_CBC_SHA384

RSA

AES (256)

SHA384

ECDHE_ECDSA_WITH_AES_128_GCM_SHA256

RSA

AES (128)

SHA256

ECDHE_ECDSA_WITH_AES_256_GCM_SHA384

RSA

AES (256)

SHA384


G.2.14 SSLProxyEngine

プロキシのSSL/TLSプロトコル・エンジンを有効または無効にします。SSLProxyEngineは<VirtualHost>セクションの中で使用し、特定の仮想ホストでのプロキシの使用に対してSSL/TLSを有効にします。デフォルトでは、SSL/TLSプロトコル・エンジンは、メイン・サーバーとすべての構成済仮想ホストの両方でプロキシに対して無効になっています。

SSLProxyEngineは、(ProxyディレクティブまたはProxyRequestディレクティブを使用した)フォワード・プロキシとして動作する仮想ホストに含めることはできません。プロキシSSL/TLSリクエストに対してフォワード・プロキシ・サーバーを有効化する際に、SSLProxyEngineは必須ではありません。

カテゴリ

構文

SSLProxyEngine ON | OFF

SSLProxyEngine on

デフォルト

Disable


G.2.15 SSLProxyProtocol

mod_osslがサーバー環境でプロキシ接続を設定するときに使用するSSLプロトコルを指定します。プロキシは、指定されたプロトコルのいずれかでのみ接続できます。使用できる値は次のとおりです。

  • SSLv3

  • TLSv1

  • TLSv1.1

  • TLSv1.2

  • All

カテゴリ

構文

SSLProxyProtocol [+-] SSLv3 | TLSv1 | TLSv1.1 | TLSv1.2 | All

SSLProxyProtocol +SSLv3

デフォルト

ALL


G.2.16 SSLProxyWallet

プロキシ接続が使用する必要のある、WRLを使用してウォレットの場所を指定(ファイルパスとして指定)します。

カテゴリ

構文

SSLProxyWallet file:path to wallet

SSLProxyWallet "${ORACLE_INSTANCE}/config/fmwconfig/components/${COMPONENT_TYPE}/instances/${COMPONENT_NAME}/keystores/proxy"

デフォルト

なし


G.2.17 SSLRequire

任意の複合ブール式がTRUEでないかぎり、アクセスを拒否します。

カテゴリ

構文

SSLRequire expression (「式の理解」を参照)

SSLRequire word ">=" word |word "ge" word

デフォルト

なし


式の理解

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}"

表G-5表G-6に標準変数とSSL変数を示します。これらの値はvarnameの有効値です。

function ::= funcname "(" funcargs ")"

funcnameには、次の関数を使用できます。

file(filename)

file関数は文字列引数(ファイル名)を1つ取り、そのファイルの内容に拡張します。これは、正規表現に照らしてファイルの内容を評価する場合に役立ちます。

表G-5には、SSLRequirevarnameの標準変数を示します。

表G-5 SSLRequireのvarnameの標準変数

標準変数 標準変数 標準変数

HTTP_USER_AGENT

PATH_INFO

AUTH_TYPE

HTTP_REFERER

QUERY_STRING

SERVER_SOFTWARE

HTTP_COOKIE

REMOTE_HOST

API_VERSION

HTTP_FORWARDED

REMOTE_IDENT

TIME_YEAR

HTTP_HOST

IS_SUBREQ

TIME_MON

HTTP_PROXY_CONNECTION

DOCUMENT_ROOT

TIME_DAY

HTTP_ACCEPT

SERVER_ADMIN

TIME_HOUR

HTTP:headername

SERVER_NAME

TIME_MIN

THE_REQUEST

SERVER_PORT

TIME_SEC

REQUEST_METHOD

SERVER_PROTOCOL

TIME_WDAY

REQUEST_SCHEME

REMOTE_ADDR

TIME

REQUEST_URI

REMOTE_USER

ENV:variablename

REQUEST_FILENAME

 


 



表G-6には、SSLRequireのvarnameのSSL変数を示します。

表G-6 SSLRequireのvarnameのSSL変数

SSL変数 SSL変数 SSL変数

HTTPS

SSL_PROTOCOL

SSL_CIPHER_ALGKEYSIZE

SSL_CIPHER

SSL_CIPHER_EXPORT

SSL_VERSION_INTERFACE

SSL_CIPHER_USEKEYSIZE

SSL_VERSION_LIBRARY

SSL_SESSION_ID

SSL_CLIENT_V_END

SSL_CLIENT_M_SERIAL

SSL_CLIENT_V_START

SSL_CLIENT_S_DN_ST

SSL_CLIENT_S_DN

SSL_CLIENT_S_DN_C

SSL_CLIENT_S_DN_CN

SSL_CLIENT_S_DN_O

SSL_CLIENT_S_DN_OU

SSL_CLIENT_S_DN_G

SSL_CLIENT_S_DN_T

SSL_CLIENT_S_DN_I

SSL_CLIENT_S_DN_UID

SSL_CLIENT_S_DN_S

SSL_CLIENT_S_DN_D

SSL_CLIENT_I_DN_C

SSL_CLIENT_S_DN_Email

SSL_CLIENT_I_DN

SSL_CLIENT_I_DN_O

SSL_CLIENT_I_DN_ST

SSL_CLIENT_I_DN_L

SSL_CLIENT_I_DN_T

SSL_CLIENT_I_DN_OU

SSL_CLIENT_I_DN_CN

SSL_CLIENT_I_DN_S

SSL_CLIENT_I_DN_I

SSL_CLIENT_I_DN_G

SSL_CLIENT_I_DN_Email

SSL_CLIENT_I_DN_D

SSL_CLIENT_I_DN_UID

SSL_CLIENT_CERT

SSL_CLIENT_CERT_CHAIN_n

SSL_CLIENT_ROOT_CERT

SSL_CLIENT_VERIFY

SSL_CLIENT_M_VERSION

SSL_SERVER_M_VERSION

SSL_SERVER_V_START

SSL_SERVER_V_END

SSL_SERVER_M_SERIAL

SSL_SERVER_S_DN_C

SSL_SERVERT_S_DN_ST

SSL_SERVER_S_DN

SSL_SERVER_S_DN_OU

SSL_SERVER_S_DN_CN

SSL_SERVER_S_DN_O

SSL_SERVER_S_DN_I

SSL_SERVER_S_DN_G

SSL_SERVER_S_DN_T

SSL_SERVER_S_DN_D

SSL_SERVER_S_DN_UID

SSL_SERVER_S_DN_S

SSL_SERVER_I_DN

SSL_SERVER_I_DN_C

SSL_SERVER_S_DN_Email

SSL_SERVER_I_DN_L

SSL_SERVER_I_DN_O

SSL_SERVER_I_DN_ST

SSL_SERVER_I_DN_CN

SSSL_SERVER_I_DN_T

SSL_SERVER_I_DN_OU

SSL_SERVER_I_DN_G

SSL_SERVER_I_DN_I

 



G.2.18 SSLRequireSSL

SSLを使用していないクライアントに対してアクセスを拒否します。構成エラーにより、セキュリティがぜい弱になる可能性があるSSL対応の仮想ホストまたはディレクトリの完全保護に役立つディレクティブです。

カテゴリ

構文

SSLRequireSSL

SSLRequireSSL

デフォルト

なし


G.2.19 SSLSessionCache

グローバル・セッションまたはプロセス間セッションのセッション・キャッシュ・ストレージ・タイプを指定します。キャッシュは、リクエストのパラレル処理を高速化するオプションの方法を提供します。使用できる値は次のとおりです。

  • 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に比べて、すべての環境で均一です。

カテゴリ

構文

SSLSessionCache none | shmht: /path/to/datafile[bytes] | shmcb:/path/to/datafile[bytes]

SSLSessionCache "shmcb:${ORACLE_INSTANCE}/servers/${COMPONENT_NAME}/logs/ssl_scache(512000)"

デフォルト

SSLSessionCache none


G.2.20 SSLSessionCacheTimeout

セッション・キャッシュ内でSSLセッションの有効期限が満了になるまでの秒数を指定します。

カテゴリ

構文

SSLSessionCacheTimeout seconds

SSLSessionCacheTimeout 120

デフォルト

300


G.2.21 SSLVerifyClient

接続時にクライアントが証明書を提示する必要があるかどうかを指定します。使用できる値は次のとおりです。

  • none: クライアント証明書は不要です。

  • optional: クライアントは有効な証明書を提示できます。

  • require: クライアントは有効な証明書を提示する必要があります。

カテゴリ

構文

SSLVerifyClient none | optional | require

SSLVerifyClient optional

デフォルト

なし



注意:

mod_sslに含まれているレベルoptional_no_ca(クライアントは有効な証明書を提示できるが、証明書が検証可能である必要はない)は、mod_osslではサポートされていません。


G.2.22 SSLWallet

WRLを使用してウォレットの場所を指定します。ファイルパスとして指定されます。

カテゴリ

構文

SSLWallet file:path to wallet

SSLWallet "${ORACLE_INSTANCE}/config/fmwconfig/components/${COMPONENT_TYPE}/instances/${COMPONENT_NAME}/keystores/default"

デフォルト

なし


G.3 mod_plsql

次の各項で、mod_plsql構成パラメータについて説明します。

G.3.1 plsql.conf

plsql.confファイルでは、次のパラメータを使用します。

G.3.1.1 PlsqlDMSEnable

mod_plsqlモジュールのDynamic Monitoring Service (DMS)を有効にします。

カテゴリ

構文

PlsqlDMSEnable On | Off

PlsqlDMSEnable On

デフォルト

On


G.3.1.2 PlsqlLogEnable

mod_plsqlモジュールのデバッグ・レベル・ログを有効にします。デバッグ・レベル・ログは、デバッグ専用に使用されます。

ロギングが有効な場合、Oracle HTTP Serverログ・ファイルは、通常、PlsqlCacheDirectory DOMAIN_HOME/servers/componentName/ディレクトリ内に作成されます。ただし、最終的な場所はPlsqlLogDirectory内に指定された場所によって決まります。

このパラメータは、Oracleサポート・サービスよりmod_plsqlモジュール問題のデバッグ指示がないかぎり、Offに設定しておきます。

mod_plsqlモジュールの内部処理の詳細を表示する場合は、このディレクティブをOnに設定します。これによって、mod_plsqlモジュールは処理されるすべてのリクエストのロギングを開始します。ログ・ファイルは、PlsqlLogDirectoryディレクティブで指定された場所に生成されます。

カテゴリ

構文

PlsqlLogEnable On | Off

PlsqlLogEnable Off

デフォルト

Off


G.3.1.3 PlsqlLogDirectory

デバッグ・レベル・ログが書き出されるディレクトリを指定します。

ロギングが有効なときにログ・ファイルが生成される場所のディレクトリ名を設定します。このディレクトリの場所について混乱が生じないように、絶対パスの使用をお薦めします。

UNIXでは、httpd子プロセスの所有者がこのディレクトリに対する書込み権限を持っている必要があります。

カテゴリ

構文

PlsqlLogDirectory directory

PlsqlLogDirectory "${ORACLE_INSTANCE}/servers/${COMPONENT_NAME}/logs"

デフォルト

なし


G.3.1.4 PlsqlIdleSessionCleanupInterval

アイドル・データベース・セッションがmod_plsqlモジュールによりクローズされてクリーンアップされるまでの時間(分数)を指定します。

このディレクティブは、mod_plsqlモジュール内でデータベース接続とセッションの接続プーリングとともに使用されます。セッションがある一定の期間使用されないと、そのセッションはクローズされて解放されます。これは、使用されていないセッションをクリーンアップし、データベース側でメモリーが解放されるようにするためです。

この時間を小さい値に設定すると、使用されていないデータベース・セッションのクリーンアップが高速になります。ただし、極端に小さい値に設定すると、mod_plsqlモジュール内の接続プーリングが提供するパフォーマンスに悪影響を及ぼすことがあります。

オープンされているデータベース・セッションの数が重要でない場合は、最大のパフォーマンスが得られるように、このパラメータの値を大きくすることができます。その場合、アクセス頻度が高く、セッション・クリーンアップ間隔に達することがないサイトについては、プーリングされたデータベース・セッションが確実に定期的にリサイクルされるように、DAD構成パラメータPlsqlMaxRequestsPerSessionを調整できます。

ほとんどのインストールでは、デフォルト値で十分です。

カテゴリ

構文

PlsqlIdleSessionCleanupInterval number

PlsqlIdleSessionCleanupInterval 10

デフォルト

15(分)


G.3.2 dads.conf

dads.confファイルには、PL/SQLのデータベース・アクセス・ディスクリプタの構成パラメータが含まれています。(ファイルに場所については表G-1を参照してください。)DADは、mod_plsqlモジュールがデータベース・サーバーに接続してHTTPリクエストを実行する方法を指定する値のセットです。

dads.confファイルでは、次のパラメータを使用します。

G.3.2.1 PlsqlAfterProcedure

リクエストされたプロシージャのコール後に起動するプロシージャを指定します。これにより、リクエストされたプロシージャがコールされた後にフック・ポイントを置くことができます。これは、リクエストされたプロシージャ内の問題のデバッグ中に、SQLトレース/SQLプロファイルを実行する場合に役立ちます。また、各プロシージャの実行後に特定のコールを確実に行う必要がある場合にも役立ちます。

カテゴリ

構文

PlsqlAfterProcedure string

PlsqlAfterProcedure portal.mypkg.myafterproc

デフォルト

なし



注意:

このパラメータは、デバッグ目的にのみ使用してください。また、このパラメータを使用すると、SQLトレース/SQLプロファイルを停止できます。


G.3.2.2 PlsqlAlwaysDescribeProcedure

mod_plsqlモジュールでプロシージャを実行する前に記述する必要があるかどうかを指定します。このパラメータをOnに設定すると、mod_plsqlモジュールではプロシージャを起動する前に常に記述します。それ以外の場合は、mod_plsqlモジュールが内部的な経験則によりパラメータ・タイプを不正に解析した場合にのみ、プロシージャを記述します。

カテゴリ

構文

PlsqlAlwaysDescribeProcedure On | Off

PlsqlAlwaysDescribeProcedure On

デフォルト

Off



注意:

このパラメータは、デバッグ目的にのみ使用してください。


G.3.2.3 PlsqlAuthenticationMode

DAD経由でアクセスできるように、使用する認証モードを指定します。PlsqlAuthenticationModeに対して指定できる値は、BasicSingleSignOnGlobalOwaCustomOwaPerPackageOwaです。

カテゴリ

構文

PlsqlAuthenticationMode Basic | SingleSignOn | GlobalOwa | CustomOwa | PerPackageOwa

PlsqlAuthenticationMode CustomOwa

デフォルト

Basic


  • Basicはデフォルトのモードであり、PlsqlDatabaseUsernamePlsqlDatabasePasswordにユーザー名とパスワードが指定されていない場合に、それらを求めるかどうかを決定します。WebDB 2.xアプリケーションにはこの設定が必要です。DADでBasic認証を使用しない場合は、DAD構成に有効なユーザー名とパスワードを含める必要があります。

  • SingleSignOnは、シングル・サインオン・サーバーを使用することを指定します。これは、Oracle9iAS Portalを使用するDADに必要です。前述のとおり、指定されたユーザー名とパスワードは、シングル・サインオン・サーバーからのものである必要があります。

  • GlobalOwaCustomOwaおよび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アプリケーションは、ごく少数です。

G.3.2.4 PlsqlBeforeProcedure

リクエストされたプロシージャのコール前に起動するプロシージャを指定します。これにより、リクエストされたプロシージャがコールされる前にフック・ポイントを置くことができます。これは、リクエストされたプロシージャ内の問題のデバッグ中に、SQLトレース/SQLプロファイルを実行する場合に役立ちます。また、各プロシージャの実行前に特定のコールを確実に行う必要がある場合にも役立ちます。

カテゴリ

構文

PlsqlBeforeProcedure string

PlsqlBeforeProcedure portal.mypkg.mybeforeproc

デフォルト

なし



注意:

このパラメータは、デバッグ目的にのみ使用してください。また、このパラメータを使用すると、SQLトレース/SQLプロファイルを起動できます。


G.3.2.5 PlsqlBindBucketLengths


注意:

この構成プロパティが変更されることはほとんどないため、たいていの場合はシステムのデフォルトで間に合います。


コレクション・バインド内の要素数のバインド中に使用する丸めサイズを指定します。PL/SQL文の実行中は、Oracle Databaseにより共有SQL領域内でPL/SQL文のキャッシュがメンテナンスされ、同じ文が再び実行される場合はキャッシュされた文が再利用されます。Oracleの一致条件では、文のテキストが同一で、バインド変数のデータ型が一致する必要があります。文字列の型が一致するには正確なバイト・サイズを指定する必要があり、コレクション・バインドの場合もコレクション内の要素数が重要になります。mod_plsqlモジュールでは文が動的にバインドされるため、共有キャッシュのヒット率は低く、ほぼ重複する値で満杯になって、共有領域でラッチの競合が発生する傾向があります。このパラメータでは、バインド長を最も近いレベルにバケット化して、このような影響を軽減します。

すべての数値は昇順で指定する必要があります。最後に指定したサイズに続くバケット・サイズは、最後のサイズの2倍とみなされます。

カテゴリ

構文

PlsqlBindBucketLengths number multiline

PlsqlBindBucketLengths 4

PlsqlBindBucketLengths 25

PlsqlBindBucketLengths 125

デフォルト

4,20,100,400


  • このパラメータが関連するのは、配列パラメータを持つプロシージャを使用し、可変個のパラメータをプロシージャに渡す場合のみです。

  • ほとんどのPL/SQLアプリケーションの場合は、デフォルトで十分です。

  • このパラメータの変更が必要かどうかを調べるには、SQL領域内でSQL文のバージョン番号をチェックします。

  • より大きい構成値の後は、mod_plsqlが必要に応じて最後の値を2倍にすることによって、さらに大きな値のバケット・サイズの自動生成を開始します。したがって、400の次のバケット値は800、その次は1600、のように続いていきます。

  • 問題を軽減するために、パラメータの受渡しを柔軟にすることを考慮してください。

G.3.2.6 PlsqlBindBucketWidths


注意:

この構成プロパティが変更されることはほとんどないため、たいていの場合はシステムのデフォルトで間に合います。


コレクション・バインド内の要素数のバインド中に使用する丸めサイズを指定します。PL/SQL文の実行中は、Oracle Databaseにより共有SQL領域内でPL/SQL文のキャッシュがメンテナンスされ、同じ文が再び実行される場合はキャッシュされた文が再利用されます。Oracleの一致条件では、文のテキストが同一で、バインド変数のデータ型が一致する必要があります。文字列の型が一致するには正確なバイト・サイズを指定する必要があり、コレクション・バインドの場合もコレクション内の要素数が重要になります。mod_plsqlモジュールでは文が動的にバインドされるため、共有キャッシュのヒット率は低く、ほぼ重複する値で満杯になって、共有領域でラッチの競合が発生する傾向があります。このパラメータでは、バインド幅を最も近いレベルにバケット化して、このような影響を軽減します。

すべての数値は昇順で指定する必要があります。最後に指定したサイズに続くバケット・サイズは、最後のサイズの2倍とみなされます。

最後のバケット幅は4000以下にする必要があります。これは、配列のバインド幅を4000以下にするというOCIの制限によるものです。

カテゴリ

構文

PlsqlBindBucketWidths number multiline

PlsqlBindBucketWidths 40

PlsqlBindBucketWidths 400

PlsqlBindBucketWidths 2000

デフォルト

32,128,1450,2048,4000


  • このパラメータが関連するのは、配列パラメータを持つプロシージャを使用し、可変個のパラメータをプロシージャに渡す場合のみです。

  • ほとんどのPL/SQLアプリケーションの場合は、デフォルトで十分です。

  • このパラメータの変更が必要かどうかを調べるには、SQL領域内でSQL文のバージョン番号をチェックします。

  • より大きい構成値の後は、mod_plsqlが必要に応じて最後の値を2倍にすることによって、さらに大きな値のバケット・サイズの自動生成を開始します。したがって、400の次のバケット値は800、その次は1600、のように続いていきます。

  • 問題を軽減するために、パラメータの受渡しを柔軟にすることを考慮してください。

G.3.2.7 PlsqlCGIEnvironmentList

PL/SQLプロシージャに渡される環境変数のデフォルト・セットに、CGI環境変数のオーバーライドおよび追加を実行するように指定します。これは、追加、オーバーライドまたは削除する名前/値ペアの複数行からなるディレクティブです。1つのディレクティブに指定できる環境変数は1つのみです。

変数名を指定して、Oracle HTTP Server環境からCGI環境変数を追加できます。CGI環境変数を削除するには、空白に設定します。独自の名前/値ペアを追加するには、myname=myvalue構文を使用します。

カテゴリ

構文

PlsqlCGIEnvironmentList string multiline

デフォルト

なし

  • Oracle HTTP Server環境から新しい環境変数を追加するには、次のように設定します。

    PlsqlCGIEnvironmentList DOCUMENT_ROOT

  • 環境変数を削除するには、次のように設定します。

    PlsqlCGIEnvironmentList MYENVAR2=

  • Oracle HTTP Server環境からオーバーライドするには、次のように設定します。

    PlsqlCGIEnvironmentList REQUEST_PROTOCOL=HTTPS

  • 独自の環境変数を追加するには、次のように設定します。

    PlsqlCGIEnvironmentList MY_VARNAME=MY_VALUE


  • ここで追加した環境変数は、ファンクションowa_util.get_cgi_envを介してPL/SQLアプリケーションで使用できます。

G.3.2.8 PlsqlConnectionTimeout

mod_plsqlモジュールの接続プールをテストするためのタイムアウトをミリ秒単位で指定します。

カテゴリ

構文

PlsqlConnectionTimeout number

PlsqlConnectionTimeout 5000

デフォルト

10000(ミリ秒)


PlsqlConnectionValidationAutomaticまたはAlwaysValidateに設定されていると、mod_plsqlモジュールはプーリングされたデータベース接続をテストしようとします。このパラメータは、mod_plsqlモジュールが接続は使用できないと判断する前に、テスト・リクエストの完了を待機する最大時間を指定します。

G.3.2.9 PlsqlConnectionValidation

mod_plsqlモジュールが接続プールで終了済接続を検出するために使用するメカニズムを指定します。


注意:

この構成プロパティが変更されることはほとんどないため、たいていの場合はシステムのデフォルトで間に合います。


パフォーマンス上の理由で、mod_plsqlモジュールはデータベース接続をプーリングします。データベース・インスタンスが停止し、mod_plsqlモジュールがそのインスタンスに対する接続プールを保持していた場合、プーリングされた各データベース接続は、次回リクエストの処理に使用される際にエラーとなります。これは、あるノードが停止しても、他のデータベース処理を実行しているノードではリクエストを正常に処理できる、RACなどの高可用性の構成で問題となります。mod_plsqlモジュールでは、データベース・ノードの停止による障害を検出した後に自己修正するためのメカニズムを提供しています。この自己修正メカニズムは、PlsqlConnectionValidationパラメータによって制御されます。

次に、PlsqlConnectionValidationの有効な値を示します。

  • Automatic: mod_plsqlモジュールは、障害(インスタンスの障害)の検出前に作成され、プーリングされたすべてのデータベース接続をテストします。

  • ThrowAwayOnFailure: mod_plsqlモジュールは、障害(インスタンスの障害)の検出前に作成され、プーリングされたすべてのデータベース接続を放棄します。

  • AlwaysValidate: mod_plsqlモジュールは、リクエストの発行前に作成され、プーリングされたすべてのデータベース接続を常にテストします。このオプションは、各リクエストのパフォーマンス・オーバーヘッドと関連しているため、注意して使用する必要があります。

  • NeverValidate: mod_plsqlモジュールは、プーリングされたデータベース接続を一切pingしません。

カテゴリ

構文

PlsqlConnectionValidation Automatic | ThrowAwayOnFailure | AlwaysValidate | NeverValidate

PlsqlConnectionValidation ThrowAwayOnFailure

デフォルト

Automatic


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: パケット・ライターに障害が発生しました

G.3.2.10 PlsqlDatabaseConnectString

Oracle Databaseへの接続を指定します。

カテゴリ

構文

PlsqlDatabaseConnectString string {ServiceNameFormat | SIDFormat | TNSFormat | NetServiceNameFormat}

stringパラメータは、2番目の引数に応じて次のように変化します。

  • 2番目の引数がServiceNameFormatの場合、stringHOST:PORT:SERVICE_NAMEになります。ここで、HOSTはデータベースを実行中のホスト名、PORTはTNSリスナーがリスニングしているポート番号、SERVICE_NAMEはデータベース・サービス名です。

    IPv6アドレスを指定するには、[IPv6_ADDRESS]:PORT:SERVICE_NAMEという書式を使用します。

  • 2番目の引数がSIDFormatの場合、stringHOST:PORT:SIDになります。ここで、HOSTはデータベースを実行中のホスト名、PORTはTNSリスナーがリスニングしているポート番号、SIDはデータベースSIDです。

    IPv6アドレスを指定するには、[IPv6_ADDRESS]:PORT:SIDという書式を使用します。

  • 2番目の引数がTNSFormatの場合、stringは、tnspingなどのNet8ユーティリティとSQL*Plusを使用して解決できる有効なTNS別名になります。

  • 2番目の引数がNetServiceNameFormatの場合、stringは、接続ディスクリプタに解決できる有効なネット・サービス名になります。接続ディスクリプタは、ネットワーク接続の宛先を特殊なフォーマットで記述したものです。接続記述子は、宛先サービスおよびネットワーク・ルート情報を含みます。

フォーマット引数を指定しない場合、mod_plsqlモジュールでは、stringがHOST:PORT:SID形式であるか、Net8で解決可能であると想定します。この2つは、指定された文字列にコロンがあるかどうかにより区別されます。

新しいDADではSIDFormat構文を使用しないことをお薦めします。この構文は、後方互換性を保つためにのみ設けられています。新しく作成するDADには、新しいフォーマット引数を使用してください。

  • PlsqlDatabaseConnectString example.com:1521:myhost.iasdb.inst ServiceNameFormat

  • PlsqlDatabaseConnectString [2001:DB8:f1ff:f1ff]:1521:myhost.iasdb.inst ServiceNameFormat

  • PlsqlDatabaseConnectString example.com:1521:iasdb SIDFormat

  • PlsqlDatabaseConnectString [2001:DB8:ff1ff:f1ff]:1521:iasdb SIDFormat

  • PlsqlDatabaseConnectString myhost_tns TNSFormat

  • PlsqlDatabaseConnectString cn=oracle,cn=iasdb NetServiceNameFormat

  • PlsqlDatabaseConnectString (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(Host=example.com)(Port= 1521))(CONNECT_DATA=(SID=iasdb))) TNSFormat

  • PlsqlDatabaseConnectString myhost_tns

  • PlsqlDatabaseConnectString example.com:1521:iasdb

デフォルト

なし


  • データベースが同じ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モジュールの観点からは、TNSFormatNetServiceNameFormatは類似しており、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にハードコードしないことをお薦めします。

G.3.2.11 PlsqlDatabasePassword

データベースへのログインに使用するパスワードを指定します。

カテゴリ

構文

PlsqlDatabasePassword string

PlsqlDatabasePassword tiger

デフォルト

なし


  • PlsqlAuthenticationModeをBasicに設定して動的認証を使用するDADの場合を除き、これは必須パラメータです。

  • SingleSignOn認証を使用するDADの場合、このパラメータではスキーマの所有者名を使用します。

DADパスワードを手動で構成変更した後に、ORACLE_HOME/binにあるdadTool.plスクリプトを実行して、DADパスワードを不明瞭化する必要があります。

DADパスワードを不明瞭化するには、次の手順を実行します。

  1. 必要に応じて、次のコマンドを使用して、ユーザーをOracleソフトウェアの所有者ユーザー(通常はoracle)に変更します。

    $ su - oracle
    
  2. 現行リリースの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
    
  3. UNIXプラットフォームでは、共有ライブラリ・パス環境変数を設定します。

    ORACLE_HOME/libまたはlib32ディレクトリを共有ライブラリ・パスに含めます。表G-7に、各プラットフォームに対応するディレクトリおよび環境変数を示します。

    表G-7 共有ライブラリ・パス環境変数

    プラットフォーム 環境変数 含めるディレクトリ

    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
    
  4. ディレクトリを、Oracle HTTP Serverの現行リリースのbinディレクトリに変更します。

    cd $ORACLE_HOME/ohs/bin
    
  5. 次のPerlスクリプトを起動して、DADパスワードを不明瞭化します。

    perl dadTool.pl -f dadfilename
    

    dadfilenamedads.confのファイル名で、DADファイルへのフルパスが含まれます。

    例:

    perl dadTool.pl -f /u01/app/oracle/user_projects/domains/base_domain/config/fmwconfig/components/OHS/ohs1/mod_plsql/dads.conf
    

G.3.2.12 PlsqlDatabaseUserName

データベースへのログインに使用するユーザー名を指定します。

カテゴリ

構文

PlsqlDatabaseUsername string

PlsqlDatabaseUsername scott

デフォルト

なし


  • PlsqlAuthenticationModeをBasicに設定して動的認証を使用するDADの場合を除き、これは必須パラメータです。

  • SingleSignOn認証を使用するDADの場合、このパラメータはスキーマの所有者名です。

G.3.2.13 PlsqlDefaultPage

URLに何も指定されていない場合にコールするデフォルトのプロシージャを指定します。

カテゴリ

構文

PlsqlDefaultPage string

PlsqlDefaultPage myschema.mypackage.home

デフォルト

なし


Oracle HTTP Serverリライト規則を使用しても、この構成パラメータを設定した場合と同じ結果になります。

G.3.2.14 PlsqlDocumentPath

これは、ドキュメント表からのドキュメントのダウンロードを開始する、URL内の仮想パスです。たとえば、このパラメータをdocsに設定すると、次のURLによってこの形式のURLでドキュメントのダウンロード・プロセスが開始されます。

/pls/dad/docs
/pls/plsqlapp/docs
カテゴリ

構文

PlsqlDocumentPath string

PlsqlDocumentPath docs

デフォルト

docs


ドキュメントのアップロードまたはダウンロードを実行しないアプリケーションの場合は、このパラメータを省略します。

G.3.2.15 PlsqlDocumentProcedure

ドキュメントのダウンロード開始時にコールするプロシージャを指定します。このプロシージャは、ダウンロード処理用にコールされます。

カテゴリ

構文

PlsqlDocumentProcedure string

PlsqlDocumentProcedure portal.wwdoc_process.process_download

デフォルト

なし


ドキュメントのアップロードまたはダウンロードを実行しないアプリケーションの場合は、このパラメータを省略します。

G.3.2.16 PlsqlDocumentTablename

すべてのドキュメントのアップロード先となるデータベース内の表を指定します。

カテゴリ

構文

PlsqlDocumentTablename string

PlsqlDocumentTablename myschema.document_table

デフォルト

なし


ドキュメントのアップロードまたはダウンロードを実行しないアプリケーションの場合は、このパラメータを省略します。

G.3.2.17 PlsqlErrorStyle

mod_plsqlエラーのエラー・レポート・モードを指定します。

カテゴリ

構文

PlsqlErrorStyle {ApacheStyle | ModplsqlStyle | DebugStyle}

  • ApacheStyle: mod_plsqlモジュールは発生したHTTPエラーをOracle HTTP Serverに示します。その後、Oracle HTTP Serverでエラー・ページが生成されます。これをOracle HTTP ServerのErrorDocumentディレクティブとともに使用すると、カスタマイズされたエラー・メッセージを生成できます。

  • ModplsqlStyle: mod_plsqlモジュールでエラー・ページが生成されます。通常、これは、発生したPL/SQLエラーと、PL/SQL例外スタック(存在する場合)を示す短いメッセージです。例:

    scott.foo PROCEDURE NOT FOUND
    
  • DebugStyle: このモードでは、ModplsqlStyleを指定した場合よりも詳細な情報が得られます。mod_plsqlモジュールによってURLとパラメータの詳細が提供され、サーバー構成情報も生成されます。このモードはデバッグ専用です。内部サーバー変数を表示するとセキュリティ上のリスクを伴うため、本番システムではこのモードを使用しないでください。

PlsqlErrorStyle ModplsqlStyle

デフォルト

ApacheStyle


G.3.2.18 PlsqlExclusionList

ブラウザから直接実行することが禁じられているプロシージャ、パッケージまたはスキーマ名のパターンを指定します。これは複数行からなるディレクティブで、各パターンを個別の行に指定します。パターンには大/小文字の区別がなく、アスタリスク(*)などのワイルドカードを使用できます。ダイレクトURLアクセスが禁じられるデフォルト・パターンは、次のとおりです。

  • sys.*

  • dbms_*

  • utl_*

  • owa_util*

  • owa.*

  • htp.*

  • htf.*

  • wpg_docload.*

このディレクティブを#NONE#に設定すると、すべての保護が無効になります。この設定は、アクティブなサイトには推奨されないため、指定しないでください。この設定は、デバッグ目的の場合に使用可能です。

このパラメータがオーバーライドされても、デフォルトは有効です。つまり、除外されるパターンのリストにデフォルト・リストを明示的に追加する必要はありません。

カテゴリ

構文

PlsqlExclusionList {string | "#NONE#" multiline}

PlsqlExclusionList myschema.private.*

PlsqlExclusionList myschema.private1.*

これらは、次のいずれかを含むURLにアクセスできません。

sys.*dbms_*utl_*owa_util*owa.*htp.*htf.*wpg_docload.*myschema.private.*myschema.private1.*

PlsqlExclusionList "#NONE#"

これは、すべての保護が無効になります。この使用方法は、アクティブなサイトには推奨されません。

デフォルト

sys.*

dbms_*

utl_*

owa_util*

owa.*

htp.*

htf.*

wpg_docload.*


  • mod_plsqlモジュールでは、このパラメータで指定したパターン以外に、次の特殊文字を含むプロシージャ名も使用できません。

    • タブ

    • 改行

    • 復帰

    • 一重引用符

    • 逆スラッシュ

    • 改ページ

    • 左カッコ

    • 右カッコ

    • スペース

    これは変更できません。

G.3.2.19 PlsqlFetchBufferSize

owa_util.get_pageまたはowa_util.get_page_rawを使用して、データベースからフェッチする内容のトリップごとの行数を指定します。

デフォルトで、mod_plsqlモジュールは各行が255バイトのレスポンス出力行を200行フェッチします。レスポンス・バイトがシングルバイトの場合、レスポンス・バッファは最大限まで移入され、1回のラウンドトリップに255×200=51000バイトをパックできます。マルチバイト・データを含むレスポンスの場合は、各行のバイトのパックが理想的にならない場合があり、ラウンドトリップごとに送信されるバイト数が少なくなります。アプリケーションで大きなページを頻繁に生成し、レスポンスが1回のラウンドトリップに収められない場合は、このパラメータを高めに設定することを考慮してください。mod_plsqlモジュールによるメモリー使用量は増加します。

カテゴリ

構文

PlsqlFetchBufferSize number

PlsqlFetchBufferSize 256

デフォルト

200


  • このパラメータは、パフォーマンスに問題がある場合にのみ変更してください。このパラメータの最小値は28ですが、それより小さくなることはほとんどありません。

  • このパラメータは、次の場合にのみ変更してください。

    • 平均的なレスポンス・ページが大きく、mod_plsqlモジュールがレスポンスをフェッチするためにデータベースへラウンドトリップする回数を減らす必要がある場合。

    • 使用中の文字セットがマルチバイトで、get_pageまたはget_page_rawで1行ごとにフェッチされるバイト数が少ないという問題に対処する必要がある場合。PL/SQL Web ToolKitでの計算は文字ベースであり、マルチバイト・キャラクタの場合、OWAパッケージでは文字の最小のバイト・サイズが想定されるため、各行のサイズが最大値まで変更されることはありません。

G.3.2.20 PlsqlInfoLogging

mod_plsqlモジュールが追加のパフォーマンス・ロギングを行うために使用するモードを指定します。

InfoDebugモード: より多くの情報がApacheのerror_logに記録されます。これは、Apacheのinfoロギング・レベルとともに使用されます。Apacheのロギング・レベルがこのレベル以上に設定されていない場合は、この設定が無視されます。

カテゴリ

構文

PlsqlInfoLogging InfoDebug

PlsqlInfoLogging InfoDebug

デフォルト


このロギング設定は、PL/SQLアプリケーションでの問題のデバッグに役立ちます。

G.3.2.21 PlsqlMaxRequestsPerSession

プーリングされたデータベース接続がクローズされて再オープンされる前に処理する必要のある最大リクエスト数を指定します。

カテゴリ

構文

PlsqlMaxRequestsPerSession number

PlsqlMaxRequestsPerSession 500

デフォルト

1000


  • このパラメータを使用すると、PL/SQLアプリケーションによる長期間のセッション再利用により発生する、メモリーとリソースの問題を軽減できます。

  • このパラメータは変更しないでください。ほとんどの場合は、デフォルトで十分です。

  • このパラメータを小さい値に設定すると、パフォーマンスが低下することがあります。使用頻度が低くパフォーマンスが問題にならないDADや、リクエスト数が限られているDADの場合は、小さい値に設定するとメリットが得られることがあります。

G.3.2.22 PlsqlNLSLanguage

このDADの変数NLS_LANGを指定します。このパラメータにより、環境変数NLS_LANGがオーバーライドされます。このパラメータを設定すると、PL/SQL Gatewayは指定されているNLS_LANGを使用してデータベースに接続します。接続後は、指定の言語と地域に切り替えるためにalter sessionコマンドが発行されます。中間層の文字セットがデータベースの文字セットと一致する場合、mod_plsqlモジュールによりセッション変更コールは発行されません。

カテゴリ

構文

PlsqlNLSLanguage string

PlsqlNLSLanguage America_America.UTF8

デフォルト

なし


  • ほとんどのアプリケーションでは、PlsqlTransferModeがCHARに設定されています。これは、PlsqlNLSLanguage内の文字セットがデータベースの文字セットと一致する必要があることを意味します。ただし、データベースとmod_plsqlモジュールの文字セットがどちらも固定サイズで、幅が一致している場合は、文字セットが一致していなくてもかまいません。レスポンスの文字セットは、常にmod_plsqlモジュールの文字セットです。

  • PlsqlTransferModeがRAWに設定されている場合は、このパラメータを無視できます。

G.3.2.23 PlsqlPathAlias

プロシージャ・コールにマップする仮想パスの別名を指定します。これはアプリケーション固有です。このディレクティブは、PlsqlPathAliasProcedureと組み合せて使用します。

カテゴリ

構文

PlsqlPathAlias string

PlsqlPathAlias url

デフォルト

なし


パスの別名を使用しないアプリケーションの場合は、このパラメータを省略できます。

G.3.2.24 PlsqlPathAliasProcedure

URLの仮想パスが、PlsqlPathAliasで構成されたパス別名と一致した場合にコールするプロシージャを指定します。

カテゴリ

構文

PlsqlPathAliasProcedure string

PlsqlPathAliasProcedure portal.wwpth_api_alias.process_download

デフォルト

なし


パスの別名を使用しないアプリケーションの場合は、このパラメータを省略できます。

G.3.2.25 PlsqlRequestValidationFunction

アプリケーション定義のPL/SQLファンクションを指定します。このファンクションにより、リクエストされたプロシージャのこれ以上の処理を許可および禁止できます。このファンクションは、DADからの実行を禁止されたパッケージおよびプロシージャ・コールをブロック・アウトして、PL/SQLアプリケーションについて厳重なセキュリティを実装する場合に役立ちます。

このパラメータによって定義されるファンクションには、次のプロトタイプが必要です。

boolean function_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;
カテゴリ

構文

PlsqlRequestValidationFunction string

PlsqlRequestValidationFunction myschema.mypkg.my_validation_check

デフォルト

なし


  • デフォルトでは、すでにmod_plsqlモジュールは、特定のスキーマおよびパッケージへのダイレクトURLアクセスを禁止しています。詳細は、「PlsqlExclusionList」を参照してください。

  • アプリケーションに属し、ブラウザからコールできるリクエストのみを許可するように、このファンクションを実装することをお薦めします。

  • このファンクションは、すべてのリクエストについてコールされるため、できるだけ最適化してください。たとえば、次のようにすることをお薦めします。

    • 前述の例と同じようにこのファンクションが実装されるように、PL/SQLパッケージに名前を付けます。

    • 実装で表参照を実行し、許可するパッケージおよびプロシージャを決定する場合、共有プールにカーソルを固定すると、パフォーマンスが改善されることがあります。

G.3.2.26 PlsqlSessionCookieName

PlsqlAuthenticationModeがSingleSignOnに設定されている場合、Cookie名を指定します。このパラメータがサポートされるのは、Oracle Fusion Middlewareのリリースのみで、Oracle PortalおよびOracleシングル・サインオンで使用されます。

カテゴリ

構文

PlsqlSessionCookieName cookie_name

PlsqlSessionCookieName mycookie

デフォルト

DAD名と同じ


  • DADでSingleSignOn認証を使用しない場合は、このパラメータを省略できます。他のほとんどの場合は、セッションのCookie名を省略する必要があります(また、このパラメータはデフォルトで自動的にDAD名に設定されます)。

  • セッションのCookie名を指定する必要があるのは、分散Oracle Portal環境に参加する必要があるOracle Portalインスタンスについてのみです。これらのOracle Portalノードを、統合されたクラスタとしてシームレスに参加する必要がある場合は、すべての参加ノードのセッションCookie名が同じであることを確認してください。

  • 独立したOracle Portalノードでは、別のセッションCookie名を使用する必要があります。

G.3.2.27 PlsqlSessionStateManagement

各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のみです。このモードでは、メモリー使用量がデフォルト・モードよりやや多くなります。

カテゴリ

構文

PlsqlSessionStateManagement {StatelessWithResetPackageState | StatelessWithFastResetPackageState | StatelessWithPreservePackageState}

PlsqlSessionStateManagement StatelessWithPreservePackageState

デフォルト

StatelessWithResetPackageState


  • 旧リリースの値stateful=noまたはstateful=STATELESS_RESETは、StatelessWithResetPackageStateに対応しています。

  • 旧リリースの値stateful=STATELESS_FAST_RESETは、StatelessWithFastResetPackageStateに対応しています。

  • 旧リリースの値stateful=STATELESS_PRESERVEは、StatelessWithPreservePackageStateに対応しています。

mod_plsqlモジュールでは、ステートフル・モードの操作はサポートされません。PL/SQLアプリケーションでステートフル動作を可能にするには、状態をCookieまたはデータベース(あるいはその両方)に保存します。

G.3.2.28 PlsqlTransferMode

データベースからのデータをmod_plsqlモジュールに送信するためのモードを指定します。ほとんどのアプリケーションでは、デフォルト値CHARを使用します。

カテゴリ

構文

PlsqlTransferMode {CHAR | RAW}

PlsqlTransferMode CHAR

デフォルト

CHAR


このパラメータを変更する必要があるのは、同一のDADからのレスポンスを異なる文字セットで返送できるようにする場合のみです。このような場合にはCHARモードは使用できません。レスポンス・データが常にデータベースの文字セットからmod_plsqlの文字セットに変換されるためです。

G.3.2.29 PlsqlUploadAsLongRaw

デフォルトのBLOBデータ型を使用せずに、LONGRAWデータ型としてアップロードするファイルの拡張子を指定します。フィールドのファイル拡張子に複数行からなるディレクティブを指定することで、デフォルトをオーバーライドできます。このフィールドにアスタリスク(*)の値を指定すると、すべてのドキュメントがLONGRAW型としてアップロードされます。

カテゴリ

構文

PlsqlUploadAsLongRaw string multiline

PlsqlUploadAsLongRaw jpg

PlsqlUploadAsLongRaw gif

デフォルト

なし


ドキュメントをアップロードまたはダウンロードしないアプリケーションの場合は、このパラメータを省略できます。

G.3.3 cache.conf

cache.confファイルには、mod_plsqlモジュールに実装されたファイル・システム・キャッシュ機能の構成の設定が含まれています。この構成ファイルが関係するのは、PL/SQLアプリケーションがOWA_CACHEパッケージを使用して、ファイル・システム内の動的生成コンテンツをキャッシュする場合のみです。

次のパラメータは、cache.confファイルで指定されます。

G.3.3.1 PlsqlCacheCleanupTime

キャッシュ・ストレージのクリーンアップの開始時刻を指定します。

この設定は、クリーンアップが発生する正確な日と時刻を定義します。頻度は日次、週次および月次に設定できます。

  • 頻度を日次で定義するには、キーワードEverydayを使用します。クリーンアップは毎日定義された時刻に始まります。たとえば、Everyday 2:00と指定すると、クリーンアップが毎日午前2時(現地時間)に発生します。

  • 頻度を週次で定義するには、曜日(SundayMondayTuesdayWednesdayThursdayFridaySaturday)を使用します。たとえば、Wednesday 15:30と指定すると、クリーンアップが毎週水曜日の午後3時30分(現地時間)に発生します。

  • 頻度を月次で定義するには、キーワードEverymonthを使用します。クリーンアップは月の最初の土曜日の定義された時刻に始まります。たとえば、Saturday Everymonth 23:00と指定すると、クリーンアップが毎月最初の土曜日の午後11時(現地時間)に発生します。

カテゴリ

構文

PlsqlCacheCleanupTime {Sunday-Saturday | Everyday | Everymonth} {hh:mm}

PlsqlCacheCleanupTime Monday 20:00

デフォルト

Saturday 23:00


G.3.3.2 PlsqlCacheDirectory

mod_plsqlモジュールによってキャッシュ・ファイルが書き出されるディレクトリを指定します。このディレクトリは存在している必要があります。存在しない場合、Oracle HTTP Serverは起動しません。

UNIXでは、httpd子プロセスの所有者がこのディレクトリに対する書込み権限を持っている必要があります。

カテゴリ

構文

PlsqlCacheDirectory directory

PlsqlCacheDirectory "${ORACLE_INSTANCE}/servers/${COMPONENT_NAME}"

デフォルト

なし


G.3.3.3 PlsqlCacheEnable

mod_plsqlのキャッシュを有効にします。

カテゴリ

構文

PlsqlCacheEnable {On | Off}

PlsqlCacheEnable On

デフォルト

Off


アプリケーションでPL/SQL Web ToolkitのOWA_CACHEパッケージを使用しない場合は、キャッシュを無効にできます。そのような場合は、パフォーマンス上のメリットはほとんどありません。

G.3.3.4 PlsqlCacheMaxAge

キャッシュ済ファイルを、キャッシュ・メンテナンスのために削除されるまで、ファイル・システム・キャッシュに置くことができる最大期間(日数)を指定します。

この設定は、キャッシュ・システムに古いコンテンツが含まれないようにするためです。この設定により、古いキャッシュ・ファイルが削除され、新しいファイル用のスペースが作成されます。

カテゴリ

構文

PlsqlCacheMaxAge number

PlsqlCacheMaxAge 20

デフォルト

30(日)


G.3.3.5 PlsqlCacheMaxSize

キャッシュ・ファイルの最大サイズを指定します。

この設定は、1つのファイルがキャッシュ全体を占有できないようにします。一般的には、この値は総キャッシュ・サイズ(PlsqlCacheTotalSizeで指定)の約1から3パーセントに設定することをお薦めします。

カテゴリ

構文

PlsqlCacheMaxSize number

PlsqlCacheMaxSize 1048576

デフォルト

1048576


G.3.3.6 PlsqlCacheTotalSize

キャッシュ・ディレクトリの合計サイズを指定します。デフォルトは20MBです。

この設定により、キャッシュで使用できる領域の量が制限されます。PL/SQLキャッシュとセッションCookieキャッシュがこのキャッシュ領域を共有します。この設定は厳密な制限ではありません。通常の処理中に、一時的にこの制限を超えることがあります。これは正常な動作です。

クリーンアップ・アルゴリズムでは、この設定を使用してキャッシュ・ファイルをどの程度削減するかを判断します。したがって、実際のスペース上限は、物理的なストレージの最大使用可能サイズです。

このパラメータは、次のように値としてバイト数を取ります。

  • 1MB=1048576バイト

  • 10MB=10485760バイト

カテゴリ

構文

PlsqlCacheTotalSize number

PlsqlCacheTotalSize 20971520

デフォルト

20971520(バイト)