9

Windows8およびVisualStudio2012にアップグレードした後、正しく実行しようとしている単一のWebロールを持つAzureプロジェクトがあります。

問題は静的コンテンツにあり、「内部サーバーエラーが発生したため、ページを表示できません」というテキストとともにHTTP500内部サーバーエラーが返されます。このエラーは、静的コンテンツ(画像とJavaScript)に対して表示されますが、動的コンテンツは正常に提供されます(すべてのコントローラーアクションは正常に機能します)。

IISに詳細なエラーメッセージを表示させることはできません。エラーへの唯一の参照はアクセスログにあり、500サブタイプ19エラーとして表示されます。

IISとIISExpressを切り替えてみましたが、同じエラーが発生します。すべての「詳細なエラーメッセージを表示する」オプションをweb.configとIISマネージャーに追加してみました。HTTPエンドポイントとHTTPSエンドポイントの両方で同じエラーが発生します。

次のステップは何ですか?

4

2 に答える 2

11

犯人が発見されました。デフォルトweb.configを私たちと比較することによって、私たちはこれを私たちの:web.configで発見しましたweb.config

<system.webServer>
  <staticContent>
    <mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />
  </staticContent>
</system.webServer>

IIS8は組み込みのWOFFをサポートしていますが、IIS7はサポートしていません。この行を変換に移動するだけで問題は解決しました。

于 2012-08-17T10:08:03.000 に答える
5

私はずっと前にこれに出くわしました、そして、ヴェガール・ラーセンからの答えは素晴らしかったです。ただし、その後osFamily 3(Windows Server 2012)にアップグレードしたところ、Azureに展開すると、サブタイプ19で500エラーが再び発生することがわかりました。修正は、変換で以下を使用することでした。

<system.webServer>
  <staticContent xdt:Transform="Insert">
    <remove fileExtension=".woff" />
    <mimeMap fileExtension=".woff" mimeType="application/x-woff" />
  </staticContent>
</system.webServer>

重要な部分は、既存の.woff構成を削除することです。そうすれば、どのIISプラットフォーム/構成でも確実に機能するようになります。

于 2012-12-28T15:33:45.493 に答える