web-dev-qa-db-ja.com

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

AzureのWebサイトを米国東部のリザーブドインスタンスに展開しました。 CustomErrors = Onがあります。数分間の作業(非常に良好なパフォーマンス)の後、アプリがハングし、速度が低下します。 (elmahにエラーは表示されません。)その後、500エラーが返され始めます。カスタムエラーページが表示されない(プレーンサーバーで "内部サーバーエラーが発生したため、ページを表示できません。"だけが表示される)ため、カスタマイズすることすらできません。その後、アプリが再起動されます。そのような生産に入ることはできません。私は何をすべきかわかりません。

17
user235681

今日、VS2013でも同じ問題が発生しました。

私のWCF-Services Webサイトはローカルで正常に機能しましたが、Azureに公開されたときに機能しませんでした。

VS2013 Update 2では、Azureに発行されたAzure Publish Profileファイルをインポートしましたが、常にこのメッセージが表示されました。

The page cannot be displayed because an internal server error has occurred

基本的なDefault.htmファイルでさえ、単純な「これはdefault.htm」メッセージを表示し、表示を拒否しました。そして、再び、私はちょうど同じメッセージを受け取ります。

ソリューション

ありがたいことに、Azureに正しく公開するwasである2番目のWCF-Serviceがあったので、web.configファイルを "faulty"プロジェクトのWebと比較しました。構成ファイル。

system.web」セクションを次のように手動で削除する必要があることがわかりました。

<system.web>
   <compilation debug="true" targetFramework="4.5" />
   <httpRuntime targetFramework="4.5" requestPathInvalidCharacters="" />
</system.web>

(アセンブリ、pages\controls、httpHandlersおよびhttpModulesの負荷を削除しました)また、「system.webServer」セクションを完全に削除します。

これを実行したら、couldAzureに発行すれば、すべて正常に機能します。

お役に立てれば。

17
Mike Gledhill

問題をトラブルシューティングするための最善のアドバイスは、Webサイトの診断ログを確認することです。 here の説明に従ってローカルでログをダウンロードできます。

新しいWindows Azure Powershell 0.6.12を使用する場合、Powershellコマンドを使用して、次のコマンドを使用してログを直接ダウンロードできます。

Azure site log tail [options] [name] //{Retrieves the value for the selected key}
  --filter - Filter to match against for displaying log output.
  --log - Write output in a log format.

上記のコマンドは、ライブ診断ログをWebサイトからコンソールにストリーミングします--path [path]-LogFilesフォルダーの下のログを取得するパス。

PSの詳細: https://github.com/windowsazure/Azure-sdk-tools-xplat

また、 フォーラム からAzure Websitesチームに連絡して、支援を求めることもできます。

7
AvkashChauhan

私もこの問題を抱えていました。私の場合、web.configは手動での編集が原因で無効でした。データベースパスワードを変更し、新しいパスワードをコピーしてweb.configに貼り付けました。

パスワードにはアンパサンド(&)が含まれていたため、エンコードするのを忘れました。

3
Daniel Hilgarth

私の場合、プロジェクトプロパティでTarget Frameworkを3.5から4.5に変更しました。 enter image description here

2
Jonathan Molina

私は同じ問題を抱えていましたが、アプリケーションのプールを統合ではなくクラシックに変更することで最終的に解決しました。 Azureポータルでこのオプションを見つけられず、「古いAzure管理プラットフォーム」を開く必要がありました。

お役に立てれば。

1
Aurel