2012-02-10 9 views
2

エラーが発生した場合、私のウェブサイトはカスタムHTMLページを表示するように設定されています。これは、IISとASP.NET開発サーバーの両方でうまく動作します。ただし、アプリケーションをWindows Azureにデプロイするとすぐに、非ASP.NET-URLに対して404ではなくHTTP 500が取得されます。httpErrors configセクションがWindows Azureで動作しない

これは、関連するweb.configファイル・セクションがどのように見えるかです:

<httpErrors errorMode="Custom"> 
    <clear /> 
    <error statusCode="404" path="/Public/Error404.html" responseMode="ExecuteURL" /> 
</httpErrors> 

<customErrors defaultRedirect="/Public/Error.html" mode="On"> 
    <error redirect="/Public/Error404.html" statusCode="404" /> 
</customErrors> 

(.aspxの上で終わるURLへの適用)customErrorsセクションでは、正常に動作します。しかし、httpErrorsセクションはありません。 80 - - 65.52.128.172 HTTP/1.1

2012-02-10午後01時30分07秒W3SVC1273337584 RD00155D3A1439 10.61.70.39 GET /asdfdsaafds:紺碧のIISは、ブラウザに500を送信したとしても、それは404を記録します Mozilla/4.0 +(互換性+ MSIE + 8.0 + Windows + NT + 6.1; + WOW64; + Trident/4.0; + SLCC2; +。NET + CLR + 2.0.50727; +。NET + CLR + 3.5.30729 。; + NET + CLR + 3.0.30729; + NET4.0C; + NET4.0E) - - 940af2dbd9df4924b87a13878752aee3.cloudapp.net 404ローカル0 2 222 457 218

、私はHTTP 500.19を得ますさらに詳しい情報:

関連する ページの構成データが無効であるため、要求されたページにアクセスできません。

コンフィグエラーロック違反

238:結果は通常、スタンドアロンIISについての私に言ったように、ロック違反をグーグルで<httpErrors errorMode="Custom" defaultPath="/Public/Error.html" existingResponse="Replace" defaultResponseMode="ExecuteURL">

は、あまりにも多くの私を助けていませんでした。 Windowsのイベントログにはエラーはありません。

私はAzureとスタンドアロンIISの両方で任意の404に対してError404.htmlを表示したいと思います。どんな助けも素晴らしいだろう。

答えて

4

よくある質問は、カスタムエラーページが実際にAzure Web Roleインスタンスにデプロイされていることを確認したかどうかです。

2番目の質問:Azureエミュレータで動作しますか?

更新:
エラーメッセージは、設定セクションがターゲットIIでロックされていることを示しています。
これをお読みくださいIntroduction to ApplicationHost.config おそらく、httpErrorsセクションのロックを解除する必要があります。

また、this solutionをご覧ください。同様のエラーが発生しました。

+0

私は自分の質問を編集しました。デプロイされています(aspx-404用に表示されます)が、ローカルでは動作しません。とにかくありがとう、これは私にもう少し洞察力を与えたことを確認します。 –

+0

私は私の答えも更新しました。 –

+0

ありがとうございました!私は根本的なIIS自体に触れることを期待していなかったので、これらのヒントを愚かに無視しました。今、私が見つけなければならないのは、これらの変更を更なるアップデートや再デプロイメントで維持する方法です。 –

関連する問題