HTTP エラー 500.0 - IIS Web ページを開くときの内部サーバー エラー エラー
この記事は、インターネット インフォメーション サービス (IIS) でホストされている Web サイトにアクセスしたときに発生する HTTP エラー 500.0 エラーを解決するのに役立ちます。
元の製品バージョン: インターネット インフォメーション サービス
元の KB 番号: 942031
まとめ
この記事では、IIS Web アプリケーションで HTTP エラー 500.0 エラーが発生した場合の HResult コードについて主に説明します。 Web アプリケーション コードによって発生する 500.0 エラーについては、「 詳細情報 」セクションを参照してください。
この記事は、Web サイト管理者を対象としています。 これらのエラーには多くの原因があり、さまざまなシステム構成に影響を与える可能性があります。 この記事で説明する手順は、サーバー上の管理者グループのメンバーが実行する必要があります。
これらのエラーが発生したエンド ユーザーは、Web サイト管理者に問題を通知する必要があります。
HResult コード
HTTP エラー 500.0 メッセージは、エラーが返された時点で Web サイトをホストする Web サーバーで問題が発生したことを示します。
これらのエラーの詳細については、次を参照してください。
HRESULT コード 0x80070032
エラー メッセージ:
アプリケーション「<アプリケーション名>」でのサーバー エラー
HTTP エラー 500.0 - 内部サーバー エラー
HRESULT: 0x80070032
HRESULT の説明: ISAPI フィルターdrive:\FilePath\ISAPI_FLT.dllがSF_NOTIFY_READ_RAW_DATA
通知の登録を試みました。
原因
この問題は、IIS が SF_NOTIFY_READ_RAW_DATA
通知に登録するインターネット サーバー API (ISAPI) フィルターをサポートしていないために発生します。
解決方法
IIS の SF_NOTIFY_READ_RAW_DATA
通知に登録する ISAPI フィルターは使用しないでください。
HResult コード 0x80070035
エラー メッセージ:
アプリケーション "<applicationName>" のサーバー エラー
HTTP エラー 500.0 - 内部サーバー エラー
HRESULT: 0x80070035
HRESULT の説明: 内部サーバー エラーが発生したため、ページが表示できませんでした。
原因
この問題は、IIS を実行しているサーバーが、要求された場所の構成済みのルート ディレクトリにアクセスできないために発生します。
解決方法
IIS を実行しているサーバーが、要求された場所の構成済みのルート ディレクトリにアクセスできることを確認します。
HResult コード 0x8007000d
エラー メッセージ:
アプリケーション「<アプリケーション名>」でのサーバー エラー
HTTP エラー 500.0 - 内部サーバー エラー
HRESULT: 0x8007000d
HRESULT の説明: ハンドラー「ASPClassic」のモジュール一覧に無効なモジュール「IsapiModule」があります。
原因
この問題は、ISAPIModule モジュールが Web サイトのモジュール一覧にないために発生します。 ISAPIModule モジュールは次の場所にあります: drive:\Windows\System32\inetsrv\isapi.dll。
解決方法
ISAPIModule モジュールを Web サイトのモジュール一覧に追加するには、次の手順に従います。
- Start>Run を選択し、「inetmgr.exe」と入力し、OK を選択します。
- IIS マネージャーで、 <サーバー名>>Web サイトを展開し、変更する Web サイトを選択します。
- 機能ビューで、[モジュール] をダブルクリックします。
- Actions ペインで、ネイティブ モジュールの追加選択。
- ネイティブ モジュールの追加] ダイアログ ボックスで、[IsapiModule] チェック ボックスをオンにし、[OKを選択します。
HResult コード 0x800700c1
エラー メッセージ:
アプリケーション「<アプリケーション名>」でのサーバー エラー
HTTP エラー 500.0 - 内部サーバー エラー
HRESULT: 0x800700c1
HRESULT の説明: 内部サーバー エラーが発生したため、ページが表示できませんでした。
原因
この問題は、スクリプト マッピングが有効でないために発生します。
解決方法
スクリプト マッピングが、要求を処理できる ISAPI.dll ファイルを指していることを確認するには、次の手順に従います。
Start>Run を選択し、「inetmgr.exe」と入力し、OK を選択します。
IIS マネージャーで、 <サーバー名>>Web サイトを展開し、変更する Web サイトを選択します。
機能ビューで、[ハンドラー マッピング] をダブルクリックします。
スクリプト マッピングが正しい ISAPI.dll ファイルをポイントしていることを確認してください。
例えば、.asp ファイルは %windir%\system32\inetsrv\asp.dll ファイルにマッピングする必要があります。
HResult コード 0x80070005
エラー メッセージ:
アプリケーション「<アプリケーション名>」でのサーバー エラー
HTTP エラー 500.0 - 内部サーバー エラー
HRESULT: 0x80070005
HRESULT の説明: ISAPI フィルター "path_of_isapi" の LoadLibraryEx が失敗しました。
原因
この問題は、無効な ISAPI フィルターがグローバル レベルまたは Web サイト レベルで読み込まれているために発生します。
解決方法
無効な ISAPI フィルターを削除するには、次の手順に従います。
- Start>Run を選択し、「inetmgr.exe」と入力し、OK を選択します。
- IIS マネージャーで、 <サーバー名>>Web サイトを展開し、変更する Web サイトを選択します。
- 機能ビューで、[ISAPI フィルター] をダブルクリックします。
- 削除する ISAPI フィルターを右クリックし、 Remove を選択します。
HResult コード 0x8007007f
HRESULT 0x8007007f には、次の 2 つの可能性があります。
エラー メッセージ 1
アプリケーション「<アプリケーション名>」でのサーバー エラー
HTTP エラー 500.0 - 内部サーバー エラー
HRESULT: 0x8007007f
HRESULT の説明: ISAPI フィルター "path_of_isapi" で GetProcAddress を呼び出すことができませんでした。
原因
この問題は、無効な ISAPI フィルターがグローバル レベルまたは Web サイト レベルで読み込まれているために発生します。
解決方法
無効な ISAPI フィルターを削除するには、次の手順に従います。
- Start>Run を選択し、「inetmgr.exe」と入力し、OK を選択します。
- IIS マネージャーで、 <サーバー名>>Web サイトを展開し、変更する Web サイトを選択します。
- 機能ビューで、[ISAPI フィルター] をダブルクリックします。
- 削除する ISAPI フィルターを右クリックし、 Remove を選択します。
エラー メッセージ 2
アプリケーション「<アプリケーション名>」でのサーバー エラー
HTTP エラー 500.0 - 内部サーバー エラー
HRESULT: 0x8007007f
HRESULT の説明: アクセスしようとしているページは問題があるため表示できません。
原因
この問題は、要求されたリソースのハンドラー マッピングが、要求を処理できない .dll ファイルを指しているために発生します。
解決方法
要求されたリソースのハンドラー マッピングを、要求を処理できる .dll ファイルをポイントするには、次の手順に従います。
Start>Run を選択し、「inetmgr.exe」と入力し、OK を選択します。
IIS マネージャーで、 <サーバー名>>Web サイトを展開し、変更する Web サイトを選択します。
機能ビューで、[ハンドラー マッピング] をダブルクリックします。
編集するスクリプト マッピングを右クリックし、 Edit を選択します。
[スクリプト マップの 編集 ] ダイアログ ボックスで、[ Executable ボックスに適切な実行可能ファイルを入力し、 OK を選択します。
例えば、.asp ファイルは %windir%\system32\inetsrv\asp.dll ファイルにマッピングする必要があります。
詳細
Web アプリケーション コードが例外をスローし、アプリケーションのランタイム (ASP.NET ランタイムなど) によってキャッチされた場合、Web 応答に HTTP エラー 500.0 エラーが表示される場合もあります。 Web アプリケーション コードからスローされた例外については、例外の種類、例外メッセージ、および例外呼び出し履歴のアプリケーション イベント ログまたは独自のカスタム アプリケーション ログを確認します。
さらにデバッグが必要な場合は、最新バージョンの DebugDiag を使用して、 first-chance 例外ダンプをキャプチャします。