既存のASP.NET MVC3サイト(既に構成済み)に更新プログラムを展開したところ、IIS死のブルースクリーンが表示されます。
HTTPエラー500.0-内部サーバーエラー
内部サーバーエラーが発生したため、ページを表示できません。
しかしながら;アプリケーションイベントログには何も表示されず、エントリの(さらに)詳細な説明が表示されるはずです。
この問題を診断するにはどうすればよいですか?
IIS7の失敗した要求トレース機能を見てください。
IIS 7 のトレースを使用した失敗した要求のトラブルシューティング
失敗した要求トレースによるトラブルシューティング
IISは、パイプラインの上位からエラーメッセージを飲み込んでいる可能性があるため、<httpErrors>
の設定を微調整することもできます。
<configuration>
<system.webServer>
<httpErrors existingResponse="PassThrough" />
</system.webServer>
</configuration>
サイトがクラシックで記述されている場合ASP次に、=でSend Errors to Browser)設定をオンにしてくださいASP構成機能:
最後に、Internet Explorerを使用している場合は、詳細設定でフレンドリーなHTTPエラーメッセージを表示していることを確認してください(ただし、すでにそれを実行したか、別のブラウザを使用しています)。
私の場合:
web.config
は破損していませんでした-ローカルマシンで同じを使用して検証済み/ inetmgr
を使用最終的に...
...Chrome/57.0.2987.133+Safari/537.36 500 19 5 312
重要なのは:
sc-status sc-substatus sc-win32-status 500 19 5
グーグルで私をIIS_USRS
にはwww
フォルダへの読み取り権限がありません
最も明らかな問題は、Webアプリケーションフォルダーに対する不適切またはゼロのNTFS権限です。そのため、サイトにサービスを提供するアカウントに適切な権限があることを確認してください。 Webディレクトリへの適切なNTFS権限がなければ、web.configに何を入れても問題はありません。
簡単なチェックは、すべての人に完全な権利を与えることです。サイトが機能し始めれば、それが権利の問題であることがわかり、適切な権利をより適切なアカウントに割り当てるように設定できます。
IIS6からアップグレードする場合、6で動作するweb.configの1つである可能性がありますが、IIS 7.5では動作しません... ... IIS Webサイトの場合、形式についてエラーが発生する可能性があります(セクションは他のセクションの下にある必要があります...)
Azure Webアプリでも同じ問題が発生しました。ローカルでデバッグしているときに、ajax呼び出しから返されたエラーメッセージ(JSON)が完全にブラウザーに返されました。しかし、Webアプリにデプロイすると、メッセージが飲み込まれ、デフォルトの500エラーメッセージが返されました。そのため、web.config existingResponse
タグでPassThrough
値をhttpErrors
に明示的に設定する必要がありました。