私の本番環境では、すべてのリクエストを/trace.axdにリダイレクトして、HTTP 404を返したいと思います。現在、デフォルトのHTTP500が返されています。これにより、分析ツールにあらゆる種類の不要なノイズが発生します。環境は、IIS7.5上のASP.NET4.0Webフォームです。
質問する
1023 次
2 に答える
6
Web.config ファイルでトレース HTTP ハンドラーを削除します。
<system.webServer>
<!-- remove TraceHandler-Integrated - Remove the tracing handlers so that navigating to /trace.axd gives us a
404 Not Found instead of 500 Internal Server Error. -->
<handlers>
<remove name="TraceHandler-Integrated" />
<remove name="TraceHandler-Integrated-4.0" />
</handlers>
</system.webServer>
/trace.axd に移動すると、500 Internal Server Error ではなく 404 Not Found が表示されるようになりました。
于 2015-03-04T12:27:43.517 に答える
2
最初に頭に浮かぶのは、次のようにBeginRequestイベントをインターセプトすることglobal.asax
です。
protected void Application_BeginRequest()
{
// assuming that in your production environment debugging is off
if (!HttpContext.Current.IsDebuggingEnabled && Request.RawUrl.Contains("trace.axd"))
{
HttpContext.Current.Response.StatusCode = 404;
HttpContext.Current.Response.End();
// or alternatively throw HttpException like this:
// throw new HttpException(404, "");
}
}
于 2013-01-03T22:08:50.033 に答える