インターネットインフォメーションサービス(IIS)で500 –内部サーバーエラーが発生した場合、Webサイトに深刻な問題が発生しています。 IIS 500のデバッグ–内部サーバーエラーには時間がかかる場合があるため、最悪のシナリオに備えることをお勧めします。 時間のプレッシャーの下でこのエラーに対処する方法を研究したくありません。
以前の投稿では、IIS(Internet Information Server)での詳細なエラーと失敗した要求のトレースについて学習しました。 この記事を進める前に、まずこれらの記事を読むことをお勧めします。
500の原因–内部サーバーエラー ^
これは、IISでホストされているWebサイトで発生する最も一般的なエラーです。 ほとんどの場合、開発者はめちゃくちゃになりました。 したがって、最速の方法は、多くの場合、Webアプリケーションの以前のバージョンを復元するなど、最後に実行したアクションを単純に元に戻すことです。 システムが再び稼働すると、テスト側でエラーの原因を安心して調査できます。
HTTP 500エラーは、サーバー側のエラーです。 問題はサーバー側にあることは理解していますが、エラーは通常あいまいです。 サーバーの何が問題なのかを管理者に正確に伝えるわけではありません。 したがって、500 –内部サーバーエラーのデバッグには時間がかかることがよくあります。
IIS 500のデバッグ–内部サーバーエラー ^
上記のエラーはサーバーの実際の問題を正確に示していないため、以前の投稿で説明したように、詳細なエラーを有効にする必要があります。 詳細エラーを有効にすると、HTTPサブステータスコードなど、より詳細なエラー情報が表示されます。 詳細なエラーでさえ、すぐに役立つ情報が表示されない場合があります。 たとえば、次のスクリーンショットを参照してください。
ここで私は得ています: 内部サーバーエラーが発生したため、ページを表示できません。 エラーページにHTTPステータスコードまたはサブステータスコードが表示されていません。 詳細エラーが有効になっている場合でもこのようなエラーが発生する場合は、ブラウザウィンドウの任意の場所を右クリックして、 検査する (またはF12を押します)。
これにより、 開発者ツール ブラウザウィンドウで。 次に、をクリックします コンソール タブ。 Webサーバーによってスローされた実際のエラーが表示されます。
500エラーの正確な原因をさらに理解するには、以前の投稿で説明したように、FailedRequestTracingを有効にします。 ここで、問題を再現してみてください。 複製できる場合は、新しく生成されたXMLログファイルをWebブラウザで開きます。 次のスクリーンショットは、サブステータスコードが19の500 –内部サーバーエラー(HTTP 500.19エラー)の実際の原因を示しています。
通常、サブステータスコード19は、構成データが無効であることを示します。 これは、サーバーレベルの構成ファイル(ApplicationHost.config)またはWebサイトレベルの構成ファイル(web.config)。 よく見ると ConfigExceptionInfo ログファイルのフィールドには、正確な行番号(この場合は6)があります。 web.config 例外の原因となったファイル。 それでは、web.configファイル自体を見てみましょう。
ここでは、開発者が構成ファイルにmimeタイプを追加しようとしたが、サーバーレベルの構成ファイルですでに定義されていることがわかります(つまり、 ApplicationHost.config)。 したがって、 一意のキー属性「fileExtension」が「.mp4」に設定されたタイプ「mimeMap」の重複コレクションエントリを追加できません 例外が返されました。 さらに、不明な要素、構文エラー、またはタイプミスが含まれている場合は、 web.config ファイルの場合、ほとんどの場合、同様のエラーが発生します。
IIS 500の解決–内部サーバーエラー ^
IIS 500 –内部サーバーエラーを解決するには、例外の原因となっている行を削除するだけです。 または、何らかの理由でこの行を削除したくない場合は、次のコードを6行目のすぐ上に追加します。 web.config:
<remove fileExtension=".mp4" />
これを行うことにより、基本的にサーバーレベルの要素をオーバーライドします。 結局、あなたの 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.