Oracle HTTP Server スタンドアロン・デプロイの管理Apache 2.0ベース 10g(10.1.3.1.0) B31848-02 |
|
この付録では、Oracle HTTP Serverの使用時に発生する可能性がある一般的な問題およびその解決方法について説明します。内容は、次のとおりです。
この項では、一般的な問題および解決策について説明します。内容は、次のとおりです。
Oracle HTTP ServerでKeepAlive
ディレクティブが「On」に設定されていると、Microsoft Internet Explorerの特定のセキュリティ・パッチが、MOD_OC4J_0145
エラー、MOD_OC4J_0119
エラー、MOD_OC4J_0013
エラーなどの間欠的HTTP-500エラーの原因となります。
間欠的HTTP-500エラーの原因は、Microsoft Internet Explorerの不具合にあります。
この問題の考えられる解決策として、次の2つがあげられます。
KeepAlive
を「Off」に設定します。
この問題の詳細は、http://metalink.oracle.comでMetalink Note 269980.1を参照してください。このMetalink Noteにアクセスするには、OracleMetalinkサイトの上部にある「Advanced Search」ボタンをクリックして、Doc ID「269980.1」を検索するのが最も簡単な方法です。
特定のファイアウォールがOracle HTTP ServerとOC4Jの間で使用されている場合、Oracle HTTP ServerはリクエストをOC4Jに転送できません。
Oracle HTTP Serverプロセスでは、OC4Jプロセスとの永続的な接続を維持します。Oracle HTTP Serverより前にファイアウォールによって接続がタイムアウトされると、ファイアウォールおよびオペレーティング・システムの構成方法に応じて、OC4Jプロセスに対するリクエストはエラーとなるか、処理の時間が非常に長くなります。
Oracle HTTP ServerのディレクティブOC4JConnTimeout
をファイアウォールのタイムアウト値(この値はファイアウォール固有)より小さい値に設定します。
ポートの競合が原因でOracle HTTP Serverが起動できない場合、次のエラーが発生する可能性があります。
[crit] (98) Address already in use: make_sock: could not bind to port 7778
ポート番号が別のプロセスで使用されているため、Oracle HTTP Serverが起動できません。
Oracle HTTP Serverに割り当てられているアドレスをブラウザに指定して結果を確認し、どのプロセスでポートがすでに使用されているかを特定します。結果に応じて、Oracle HTTP Serverまたは競合するプロセスのIP:ポート・アドレスを変更します。
1台のマシン上で実行中のhttpdプロセスが多すぎると、レスポンス時間が急激に低下します。
httpdプロセスを起動しすぎると、通常の処理を行うためのリソースが不足します。
ハードウェア・ボックスが対処できる値までMaxClients
の値を下げます。
1024未満のポートでOracle HTTP Serverを起動しようとすると、次のエラーが発生します。
Bind errors on ports below 1024: PERMISSION DENIED: MAKE_SOCK: COULD NOT BIND TO PORT 443.
1024未満のポートでは、Oracle HTTP Serverは起動しません。これは、これらのポートをバインドするには、root権限が必要になるためです。また、.apachectl
を構成する手順も実行されていません。
次の手順を実行すると、1024未満のポートでroot
としてOracle HTTP Serverを実行できます。
root
としてログインします。
cd ORACLE_HOME/Apache/Apache/bin chown root .apachectl chmod 6750 .apachectl
Oracle HTTP Serverでは次のエラーが発生し、起動できないことがあります。
"[error] Can't locate mod_perl.pm in @INC (@INC contains:$ORACLE_HOME/perl/...)
または
[error] Can't locate Apache::Registry.pm in @INC (@INC contains: $ORACLE_HOME/per/...)
mod_perl
は、ORACLE_HOME
/Apache/Apache/mod_perl
ディレクトリの下に保存されるPMファイルを検出する必要があります。これらのPMファイルがないと、mod_perl
は起動しません。
UNIXの場合、apachectl
が変数PERL5LIB
で正しく定義されているかどうかをチェックします。これはORACLE_HOME
/Apache/Apache/mod_perl/lib/site_perl/5.6.1/sun4-solaris
を指している必要があります。
Windowsの場合、opmn.xml
のHTTP Serverセクションの環境サブセクションにPERL5LIB
の正しいエントリがあるかどうかをチェックします。これはORACLE_HOME
¥Apache¥Apache¥mod_perl¥lib¥site_perl¥5.6.1¥lib
を指している必要があります。
OracleMetaLink(http://metalink.oracle.com)には、さらに多くの解決策が掲載されています。問題の解決策が見つからない場合は、サービス・リクエストを作成してください。
|
![]() Copyright © 2007 Oracle Corporation. All Rights Reserved. |
|