28

ASP.Net Webサイトがあり、カスタムエラーページを使用したい。私は自分のweb.configに次のコードを入れました

<customErrors mode="On" defaultRedirect="~/error.aspx">
    <error statusCode="404" redirect="~/error.aspx" />
</customErrors>

問題は、存在しないURLにアクセスしても、IISマネージャーで指定された404エラーページを使用していることです。

質問:作成したerror.aspxページを使用するにはどうすればよいですか?IISマネージャーの設定がweb.configを上書きするのはなぜですか?

4

5 に答える 5

32

この方法を試してみてください。ほとんど同じですが、それが私がやったことであり、働いています。

<configuration>
    <system.web>
       <customErrors mode="On" defaultRedirect="apperror.aspx">
          <error statusCode="404" redirect="404.aspx" />
          <error statusCode="500" redirect="500.aspx" />
       </customErrors>
    </system.web>
</configuration> 

または、緊急に必要な場合は、IIS 設定から 404 エラー ページを変更してみてください。

于 2010-01-29T11:18:53.107 に答える
9

ASP.NET サイトのカスタム エラー ページを構成するには、次の 2 つの方法があります。

  1. インターネット インフォメーション サービス (IIS) マネージャー (GUI)
  2. web.config ファイル

この記事では、それぞれの方法について説明します。

error.aspxページが表示されない理由は、web.config にエラーがあるためである可能性があります。代わりにこれを試してください:

<configuration>
   <system.web>
      <customErrors defaultRedirect="error.aspx" mode="RemoteOnly">
         <error statusCode="404" redirect="error.aspx"/>
      </customErrors>
   </system.web>
</configuration>

IIS マネージャーで、Feature DelegationError PagesRead/Writeに設定されていることを確認する必要がある場合があります。

IIS マネージャー: 機能委任パネル

また、この回答は web.config ファイルの構成に役立つ場合があります。

于 2014-08-01T15:09:07.290 に答える
3
<customErrors defaultRedirect="~/404.aspx" mode="On">
    <error statusCode="404" redirect="~/404.aspx"/>
</customErrors>

上記のコードは、ファイル拡張子がわかっている場合 (.html、.aspx など)、「Page Not Found Error-404」専用です。

それに加えて、拡張子が不明または正しくないためのカスタマーエラーも設定しています

.aspwxまたは.vivaldohttperrorsに設定を追加する必要がありますweb.config

<httpErrors  errorMode="Custom"> 
       <error statusCode="404" prefixLanguageFilePath="" path="/404.aspx"         responseMode="Redirect" />
</httpErrors>
<modules runAllManagedModulesForAllRequests="true"/>

の中になければならない<system.webServer> </system.webServer>

于 2014-01-28T13:39:11.900 に答える