2009-04-20 3 views
2

実行しているサイトでは、404と500のエラーがマップされ、エンドユーザーのカスタムエラーページにリダイレクトされています。私のweb.configファイルに次のコードを使用して:ASP.Netの特定のページに対するカスタムエラー処理

... 
... 

<system.web> 
    <customErrors defaultRedirect="/404/default.aspx" mode="RemoteOnly"> 

    <error statusCode="404" redirect="/404/default.aspx" /> 

    </customErrors> 

    ... 
    ... 

しかし、私は私がリダイレクトされたくない一つの特定のページを持っています。サイトが100%稼動していることを確認するヘルスチェックページ。私はweb.configの下のコードを使用して、場所固有のカスタムエラーハンドラを設定しようとしました:

... 
... 

    </system.web> 
    <location path="health.aspx"> 
    <system.web> 
     <customErrors defaultRedirect="" mode="RemoteOnly"></customErrors> 
    </system.web> 
    </location> 
... 
... 

しかし、それは動作していないようです。 health.aspxの名前をbadhealth.aspxのようなものに変更した後、リクエストを行うと、Yellow Screen of Deathページから一般的な404エラーが発生することが予想されます。同様に、コードを意図的に変更してエラーをスローすると、YSODページから500エラーが発生するはずです。どちらの場合も、カスタム404ページにリダイレクトされてしまい、YSODを取得してしまいます。思考?

ご協力いただきまして誠にありがとうございます。

おかげで、すべて、 - フランク

答えて

1

ネヴァーマインドは、我々は問題を解決しました。場所固有のcustomErrorディレクティブがあると思われます。 defaultRedirectを ""としておくと、デフォルトのsitewide defaultRedirect URLになります。

<system.web> 
    <customErrors defaultRedirect="/404/default.aspx" mode="RemoteOnly"> 
     <error statusCode="404" redirect="/404/default.aspx" /> 
    </customErrors> 
</system.web> 
<location path="health.aspx"> 
    <system.web> 
     <customErrors mode="Off"/> 
    </system.web> 
</location> 

とにかく感謝、ホセ:

ソリューションはそうのように、この特定のパスの取り扱いCustomErrorをオフにするだけでした。

+0

どうしましたか(特定のパスでカスタムエラーを無効にする) – taur

関連する問題