ヘッダーをスキップ
Oracle Fusion Middleware Oracle HTTP Server管理者ガイド
11g リリース1 (11.1.1)
B55928-07
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

C Oracle HTTP Serverのトラブルシューティング

この付録では、Oracle HTTP Serverの使用時に発生する可能性がある一般的な問題およびその解決方法について説明します。内容は次のとおりです。

C.1 ポートの競合によりOracle HTTP Serverが起動できない

ポートの競合が原因でOracle HTTP Serverが起動できない場合、次のエラーが発生する可能性があります。

[VirtualHost: main] (98)Address already in use: make_sock: could not bind to address [::]:7777

解決策

そのポートをすでに使用しているプロセスを判別し、Oracle HTTP ServerのIPポート・アドレスか、競合しているプロセスのポートを変更します。

C.2 多数のhttpdプロセスによるシステムのオーバーロード

1つのシステム上で実行中のhttpdプロセスが多すぎると、通常処理のためのリソースが不足し、レスポンス時間が低下します。

解決策

マシンが対処できる値までMaxClientsの値を下げます。

C.3 1024未満のポートでOracle HTTP Serverの起動時に発生する権限拒否

1024未満のポートでOracle HTTP Serverを起動しようとすると、次のエラーが発生します。

[VirtualHost: main] (13)Permission denied: make_sock: could not bind to address [::]:443

1024未満のポートでは、Oracle HTTP Serverは起動しません。これは、これらのポートをバインドするには、root権限が必要になるためです。

解決策

4.1.2.3項「特権ポートでのOracle HTTP Serverの起動」の手順に従って、特権ポートでOracle HTTP Serverを起動します。

C.4 PMファイルが正しく検出されない場合にOracle HTTP Serverが起動できない

PERL5LIB変数内に定義されているパスにローカルなPerlモジュール(PM)ファイルをOracle HTTP Serverが見つけられない場合、次のエラーが発生し、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/perl/...)

解決策

ORACLE_HOME/ohs/bin/apachectlPERL5LIB変数内に正しく定義されていることを確認します。PMファイルが含まれているパスが指定されている必要があります。デフォルトでは、次のディレクトリ内のPMファイルが指定されています。

ORACLE_HOME/ohs/mod_perl/lib/site_perl/5.10.0
ORACLE_HOME/perl/lib/5.10.0
ORACLE_HOME/perl/lib/site_perl/5.10.0

C.5 EMでPerSetEnvを設定解除して構成済のPerSetEnv変数を削除すると例外がスローされる

EM mod_perl構成ページを使用してmod_perlを構成し、「環境」フィールドから構成済のPerSetEnv変数を削除しようとすると、次のエラーがスローされます。

Failed to invoke operation save on MBean
oracle.as.management.mbeans.register:type=component,name=ohs1,instance=webtier
 _inst7971,Location=AdminServer
Apply failed, modify required parameters and save again. Validation of
configuration trying to apply failed 
.
.
.

解決策

この状況に対処するには、次の手順に従います。

  1. ポップアップ・エラーを閉じて、「元に戻す」をクリックします。

  2. 次の手順のいずれかを実行して、PerSetEnvを削除します。

    • EMの「詳細構成」ページに移動して、mod_perl.confファイルを直接変更します。

      または

    • instance home/config/OHS/component_name/moduleconf/mod_perl.confに移動し、構成ファイルを直接編集して、PerSetEnv値を削除します。

  3. OHSを再起動します。

C.6 ログ・ファイルを使用したエラーの特定

次のログ・ファイルを使用すると、エラーの特定に役立ちます。

C.6.1 リライト・ログ

このログ・ファイルは、mod_rewriteが使用されている場合のデバッグに必要です。このログ・ファイルでは、リライト・エンジンによるリクエストの変換方法の詳細分析が生成されます。詳細レベルは、RewriteLogLevelディレクティブを使用して制御します。


関連項目:

Apache HTTP Serverドキュメントの「Rewrite Log」


C.6.2 スクリプト・ログ

このログ・ファイルでは、CGIスクリプトからの入出力を記録できます。このファイルはテストにのみ使用し、本番サーバーには使用しないでください。


関連項目:

Apache HTTP Serverドキュメントの「Script Log」


C.6.3 エラー・ログ

このログ・ファイルには、全体的なサーバー問題が記録されます。エラー・ログを構成および表示する方法の詳細は、第7章「Oracle HTTP Serverログの管理」を参照してください。

C.7 クライアントIPアドレスがOracle Web Cacheによる構成で使用されない

UseWebCacheIpディレクティブによって、クライアントがOracle HTTP ServerにOracle Web Cacheから接続する際、Oracle HTTP Serverではロギングおよびmod_authz_hostアクセス制御にクライアントIPアドレスを使用できます。この機能はその他のフロントエンド・プロキシ・サーバーでも、プロキシでClientIPリクエスト・ヘッダーがクライアントIPアドレスに設定されていれば、使用できる場合があります。UseWebCacheIpが有効ではない場合に、クライアントがOracle HTTP ServerにOracle Web Cacheまたはその他のプロキシから接続する際、ロギングおよびmod_authz_hostアクセス制御に使用されるクライアント・アドレスは、Oracle Web Cacheまたはその他のプロキシのアドレスになります。

解決策

httpd.confファイルでUseWebCacheIpをONに設定します。

また、UseWebCacheIpをONに設定しない場合は、Oracle HTTP Serverに接続中のホストのアドレスが、ロギングおよびホストベースのアクセス制御に使用されます。場合によっては、これはクライアントのかわりにプロキシになります。


注意:

UseWebCacheIpディレクティブは、Oracle HTTP Serverリリース11.1.1.4.0および11.1.1.5.0では使用できません。