もっと詳しく

インターネットインフォメーションサービス(IIS)で500 –内部サーバーエラーが発生した場合、Webサイトに深刻な問題が発生しています。 IIS 500のデバッグ–内部サーバーエラーには時間がかかる場合があるため、最悪のシナリオに備えることをお勧めします。 時間のプレッシャーの下でこのエラーに対処する方法を研究したくありません。

SurenderKumarによる最新の投稿 (すべてを見る)

以前の投稿では、IIS(Internet Information Server)での詳細なエラーと失敗した要求のトレースについて学習しました。 この記事を進める前に、まずこれらの記事を読むことをお勧めします。

500の原因–内部サーバーエラー ^

これは、IISでホストされているWebサイトで発生する最も一般的なエラーです。 ほとんどの場合、開発者はめちゃくちゃになりました。 したがって、最速の方法は、多くの場合、Webアプリケーションの以前のバージョンを復元するなど、最後に実行したアクションを単純に元に戻すことです。 システムが再び稼働すると、テスト側でエラーの原因を安心して調査できます。

500内部サーバーエラー

500内部サーバーエラー

HTTP 500エラーは、サーバー側のエラーです。 問題はサーバー側にあることは理解していますが、エラーは通常あいまいです。 サーバーの何が問題なのかを管理者に正確に伝えるわけではありません。 したがって、500 –内部サーバーエラーのデバッグには時間がかかることがよくあります。

IIS 500のデバッグ–内部サーバーエラー ^

上記のエラーはサーバーの実際の問題を正確に示していないため、以前の投稿で説明したように、詳細なエラーを有効にする必要があります。 詳細エラーを有効にすると、HTTPサブステータスコードなど、より詳細なエラー情報が表示されます。 詳細なエラーでさえ、すぐに役立つ情報が表示されない場合があります。 たとえば、次のスクリーンショットを参照してください。

内部サーバーエラーが発生したため、ページを表示できません

内部サーバーエラーが発生したため、ページを表示できません

ここで私は得ています: 内部サーバーエラーが発生したため、ページを表示できません。 エラーページにHTTPステータスコードまたはサブステータスコードが表示されていません。 詳細エラーが有効になっている場合でもこのようなエラーが発生する場合は、ブラウザウィンドウの任意の場所を右クリックして、 検査する (またはF12を押します)。

サーバーエラーを明らかにするためにWebブラウザで開発者ツールを開く

サーバーエラーを明らかにするためにWebブラウザで開発者ツールを開く

これにより、 開発者ツール ブラウザウィンドウで。 次に、をクリックします コンソール タブ。 Webサーバーによってスローされた実際のエラーが表示されます。

Webブラウザの開発者ツールの[コンソール]タブを使用したサーバーエラーの表示

Webブラウザの開発者ツールの[コンソール]タブを使用したサーバーエラーの表示

500エラーの正確な原因をさらに理解するには、以前の投稿で説明したように、FailedRequestTracingを有効にします。 ここで、問題を再現してみてください。 複製できる場合は、新しく生成されたXMLログファイルをWebブラウザで開きます。 次のスクリーンショットは、サブステータスコードが19の500 –内部サーバーエラー(HTTP 500.19エラー)の実際の原因を示しています。

FailedRequestTracingログファイルを使用して500エラーの原因を特定する

FailedRequestTracingログファイルを使用して500エラーの原因を特定する

通常、サブステータスコード19は、構成データが無効であることを示します。 これは、サーバーレベルの構成ファイル(ApplicationHost.config)またはWebサイトレベルの構成ファイル(web.config)。 よく見ると ConfigExceptionInfo ログファイルのフィールドには、正確な行番号(この場合は6)があります。 web.config 例外の原因となったファイル。 それでは、web.configファイル自体を見てみましょう。

web.configファイルで問題のある要素を表示する

web.configファイルで問題のある要素を表示する

ここでは、開発者が構成ファイルにmimeタイプを追加しようとしたが、サーバーレベルの構成ファイルですでに定義されていることがわかります(つまり、 ApplicationHost.config)。 したがって、 一意のキー属性「fileExtension」が「.mp4」に設定されたタイプ「mimeMap」の重複コレクションエントリを追加できません 例外が返されました。 さらに、不明な要素、構文エラー、またはタイプミスが含まれている場合は、 web.config ファイルの場合、ほとんどの場合、同様のエラーが発生します。

IIS 500の解決–内部サーバーエラー ^

IIS 500 –内部サーバーエラーを解決するには、例外の原因となっている行を削除するだけです。 または、何らかの理由でこの行を削除したくない場合は、次のコードを6行目のすぐ上に追加します。 web.config

<remove fileExtension=".mp4" />

これを行うことにより、基本的にサーバーレベルの要素をオーバーライドします。 結局、あなたの web.config ファイルは次のようになります。

サーバーレベルのmime要素をweb.configファイルでオーバーライドする

サーバーレベルのmime要素をweb.configファイルでオーバーライドする

ここでページを更新すると、エラーが消えるはずです。 これは、 500.19 エラー。 別のサブステータスコードで500エラーが発生した場合は、同じアプローチを使用して問題のトラブルシューティングを行ってください。

一般的な500.xサブステータスコード ^

次の表は、最も一般的なHTTP 500サブステータスコードのいくつかと、それらの考えられる原因およびトラブルシューティングのアドバイスを示しています。

4sysopsニュースレターを購読してください!

ステータスコード 推定原因 トラブルシューティングのアドバイス
500.11 アプリケーションがWebサーバーでシャットダウンしています アプリケーションプールがシャットダウンしています。 ワーカープロセスがシャットダウンを終了するのを待ってから、再試行できます。
500.12 アプリケーションはWebサーバーでの再起動でビジーです これは一時的なエラーであり、ページを更新すると自動的に消えます。 エラーが続く場合は、Webアプリケーション自体に問題があります。
500.13 Webサーバーがビジーすぎます このエラーは、着信同時要求の数がIISアプリケーションが処理できる数を超えたことを示します。 これは、パフォーマンス設定が正しくない場合に発生する可能性があります。 このような問題のトラブルシューティングを行うには、メモリダンプをキャプチャし、次のようなツールを使用して分析する必要があります。 デバッグ診断
500.15 Global.asaxファイルの直接リクエストは許可されていません 直接リクエストがありました Global.asa また Global.asax Webサーバーで許可されていないファイル
500.19 構成データが無効です このエラーを修正する方法については、すでに説明しました。
500.21 モジュールが認識されない このステータスコードは、ISAPIモジュールの欠落など、IISサーバーの部分的なインストールが原因で発生します。 このエラーを修正するには、不足しているIISコンポーネントを特定してインストールします。

問題のトラブルシューティングを行ったら、無効にすることを忘れないでください 失敗したリクエストトレース 詳細なエラーをWebサーバーのカスタムエラーに戻します。

The post IIS 500のデバッグ–内部サーバーエラー– 4sysops appeared first on Gamingsym Japan.