Trace.axd возвращает YSOD, а не пользовательскую ошибку

Это официально сводит меня с ума...... У меня есть сайт на IIS7 под управлением ASP.Net 3.5. Трассировка отключена, и у меня настроены пользовательские ошибки, однако при доступе к www.mysite.com/trace.axd я получаю стандартный ASP.Net YSOD вместо своей пользовательской страницы ошибок. Возвращаемое состояние - 500, однако еще более странно, что при использовании Cassini или Dev Server статус 403.

Таким образом, мой вопрос заключается в том, как я могу вернуть свою страницу с ошибкой в ​​окне реального времени вместо стандартного ASP.Net YSOD?

Конфигурация пользовательских ошибок:

<customErrors mode="RemoteOnly" defaultRedirect="~/Error.aspx" redirectMode="ResponseRewrite">
<error statusCode="404" path="~/404.aspx" redirect="~/404.aspx" responseMode="ExecuteURL" /></customErrors>

Настройки трассировки:

<tracing>
            <traceFailedRequests>
                <add path="*.aspx">
                    <traceAreas>
                        <add provider="ASP" verbosity="Verbose" />
                        <add provider="ASPNET" areas="Infrastructure,Module,Page,AppServices" verbosity="Verbose" />
                        <add provider="ISAPI Extension" verbosity="Verbose" />
                        <add provider="WWW Server" areas="Authentication,Security,Filter,StaticFile,CGI,Compression,Cache,RequestNotifications,Module" verbosity="Verbose" />
                    </traceAreas>
                    <failureDefinitions timeTaken="00:00:00" statusCodes="500" />
                </add>
            </traceFailedRequests>
        </tracing>

Любая помощь здесь очень ценится, дайте мне знать, если вам нужно что-нибудь еще:)

1 ответ

Удалите обработчик трассировки HTTP в файле Web.config:

  <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 теперь дает нам 404 Not Found вместо 500 Internal Server Error.

Другие вопросы по тегам