質問

の違いは何ですか、 customErrorshttpErrors にいます。configファイルASP.NET MVC。

そのガイドラインを用いのでしょうか。

役に立ちましたか?

解決

免責事項:これは私の経験から、なくない。

両方を定義するために使用されエラー処理のためのウェブサイト上の異なるソフトウェアとは異なるconfigます。

customErrors aレガシィ(逆compatable)要素に用いられたVisual Studioで開発サーバー(通称.VSDSはCassini).

httpErrors の新しい要素だけが使用IIS7.

このハイライト 可能 問題が発ASP.NET サイトの利用中にVSDSではなく、地IIS.

また、 を参照この後自分で 取り扱いについてはエラーメッセージIIS7をご希望の場合は完全にエラー出力に出力します。

概要:

  • の開発に VSDS -利用 customErrors
  • 当サイトの公開を IIS6 -利用 customErrors
  • 当サイトの公開を IIS7 -利用 httpErrors.

場の発展 VSDS が公開 IIS7, その思uずれかが必要です。

他のヒント

*月-2016年

のcustomErrors属性を使用する.純コードが例外をスロー(404,403,500等のhttpErrors属性で使用の場合IISそのものがある例外。

  • /myfakeextensionslessurl-->httpErrors404
  • /myfakeaspsx.aspx-->customErrors404
  • /myfakeimage.jpg -->httpErrors404
  • /throw500.出荷時-->customErrors500
  • /throw500-->customErrors500

多くの落とし穴と設定を修正。その場合オクタコサノールは、最高の2つのオプションでは:

例1:Htmlページ

<system.web>
  <customErrors mode="RemoteOnly" defaultRedirect="/Error500.html" redirectMode="ResponseRewrite">
    <error statusCode="403" redirect="/Error403.html" />
    <error statusCode="404" redirect="/Error404.html" />
    <error statusCode="500" redirect="/Error500.html" />
  </customErrors>
</system.web>
<system.webServer>
  <httpErrors errorMode="DetailedLocalOnly" existingResponse="Auto">
    <remove statusCode="403" />
    <remove statusCode="404" />
    <remove statusCode="500" />
    <error statusCode="403" responseMode="File" path="Error403.html" />
    <error statusCode="404" responseMode="File" path="Error404.html" />
    <error statusCode="500" responseMode="File" path="Error500.html" />
  </httpErrors>
</system.webServer>

例2:使用aspxページ

<system.web>
  <customErrors mode="RemoteOnly" defaultRedirect="/Error500.html" redirectMode="ResponseRewrite">
    <error statusCode="403" redirect="/Error403.aspx" />
    <error statusCode="404" redirect="/Error404.aspx" />
    <error statusCode="500" redirect="/Error500.aspx" />
  </customErrors>
</system.web>
<system.webServer>
  <httpErrors errorMode="DetailedLocalOnly" existingResponse="Auto">
    <remove statusCode="403" />
    <remove statusCode="404" />
    <remove statusCode="500" />
    <error statusCode="403" responseMode="ExecuteURL" path="Error403.aspx" />
    <error statusCode="404" responseMode="ExecuteURL" path="Error404.aspx" />
    <error statusCode="500" responseMode="ExecuteURL" path="Error500.aspx" />
  </httpErrors>
</system.webServer>

のaspxエラーページだけのようなこと(例404ページ):

<% 
    Response.StatusCode = 404;
    Response.TrySkipIisCustomErrors = true;
 %>

注意:を用いて以下のurlにcustomErrors部 ない可能です!. (hacks)

一作は無効にするカスタムエラーやろうhttpエラーのカスタムページです。友人に作り上げられた設定の場合を見たい時間を共有したいと思いました。

背景

良いカスタムエラーページ:

  1. の実例外を訪れたときに問題は地元のページ
  2. ショーのカスタムページを訪れたときに、問題のページを遠隔
  3. なリダイレクトでのエラーページコンテンツでのseo理由など)
  4. ますの状況を正しく示しているコード

いを明らかにオプション当社のconfig:

  1. <customErrors mode="RemoteOnly".を指定できる。 On, Off, RemoteOnly.

    • On =メインメニューからツールのカスタムエラーページ
    • Off =メインメニューからツールのエラー
    • RemoteOnly =Showのエラーの現地でのカスタムエラーのページです。いでいきたいと思ってい RemoteOnly のための文1
  2. <customErrors redirectMode="ResponseRewrite".を指定できる。 ResponseRedirect または ResponseRewrite.の ResponseRedirect モリダイレクトのエラーページのカスタムエラーページです。リンククローラー(SEO)、302->500がしたいリンクのクローラーを500エラーになります。

  3. <httpErrors errorMode="DetailedLocalOnly".これに相当するもの customErrors モードになります。オプションす: Custom, Detailed, DetailedLocalOnly.

良いブログに投稿するに助かったんです: http://benfoster.io/blog/aspnet-mvc-custom-error-pages

<customErrors><httpErrors>


<customErrors>

  • きご利用いただけます。IIS7+
  • 指定のカスタムエラーのページのご請求の取扱いASP.NET
  • のみを取り扱うご要望にASP.NET の応用
  • 静的ファイルなどのHTMLファイルまたはディレクトリ(ガスタービンビジネスセンター")のUrlを取り扱っておりません

<httpErrors>

  • 導入されIIS7
  • 指定のカスタムエラーページ要求を取り扱うIIS
  • 取り扱うご要望にASP.NET の応用 および/または 取り扱うご要望外のASP.NET アプリケーション●
  • すべてのファイルやUrlを取り扱う*

注意:考える必要はありません使用 customErrors

引用元: カスタム404エラーページASP.NET (良品)


ExecuteURL いて動的コンテンツなど。aspxページの path 値られているのです。 サーバの相対URL):

<system.webServer>
  <httpErrors errorMode="Custom" existingResponse="Auto" defaultResponseMode="ExecuteURL" >
    <remove statusCode="404"/>
    <error statusCode="404" responseMode="ExecuteURL" path="/error.aspx" />
  </httpErrors>
</system.webServer>

File ラカスタムエラー出力ファイルなど。htmlページ:

<system.webServer>
  <httpErrors errorMode="Custom" existingResponse="Auto" defaultResponseMode="File" >
    <remove statusCode="404"/>
    <error statusCode="404" path="404.html" />
  </httpErrors>
</system.webServer>

参考: HTTPエラー (www.iis.net)

詳しくは読みにwww.iis.net 上記リンク

誤差項のウェブconfigはオーダーメイド感覚で提供するhttpエラー処理アプローチがあり、一customErrors内部のシステム。ウェブや他のhttpErrors内部のシステム。ウェブサーバ(以下)

customErrors: この部分は使用前にIIS7を導入し、IIS6 5前後まで使いここでは取り扱いカスタムhttpエラーによるレスポンスのhttpステータスコードです。

httpErrors: IIS7以降を使用このセクションとして customErrors 部取扱いカスタムhttp誤差に基づくファイル拡張子からの請求の場合ページの延長登録のISAPI dll(.aspx,ashx,.asmx,.svcなどの指数です。aspxしIISお迎えに設定 customeErrors 部かでお迎えに設定 httpErrors (IIS7主催のモードの設定が必要として統合気分でないクラシック)

以下の例ることが404エラー処理チェックリンク:

httperrors vs customerrorsにwebconfig,iis,asp.net

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top