1

404 処理ページを作成しようとしていますが、.aspx ファイルに対してのみ機能するページに行き詰まっています。これは、実際には必要なものではありません。

IIS6で実行しています。サイトには、拡張子のない URL 用のワイルドカード マッピングがあります。すべての要求は Global.asax の Application_BeginRequest を通過しますが、すべてのエラーが Application_Error を通過するわけではありません。

非 .aspx ファイルに対して Application_Error を発生させる方法はありますか?

これは Application_Error 内のコードです

HttpException serverError = (HttpException)Server.GetLastError();

if (serverError != null) {
    int errorCode = serverError.GetHttpCode();
    if (errorCode == 404) {
        Server.ClearError();
        Server.Transfer("/errorPage.aspx");
    }
}
4

1 に答える 1

1

IIS 6 でこれをうまく処理できた唯一の方法は、.aspx または .ashx ファイルのいずれかを指す (つまり、errorPage.aspx を指す) IIS カスタム エラーに 404 の特定のハンドラーを追加することです。

于 2011-02-17T15:38:03.677 に答える