ASP.Net Swallowing 404 Ошибка - PullRequest
3 голосов
/ 15 марта 2011

Итак, я установил правило в IIS7 для перенаправления на определенную страницу с ошибкой 404.

Это прекрасно работает, пока я печатаю URL-адреса, такие как:

www.abc.com/Test/

Однако, как только я пытаюсь получить доступ к файлу, который не существует

www.abc.com/Test/Test.aspx

, я получаю сообщение об ошибке ASP.Net:

Ошибка сервера в '/'Приложение.

Ресурс не найден.

Как я могу не дать ASP.Net проглотить ошибку 404 и переопределить мои настройки в IIS7?

РЕДАКТИРОВАТЬВот мой файл web.config.IIS добавил материал system.webServer, а не я.

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.web>
        <customErrors mode="Off"/>
    </system.web>
    <system.webServer>
        <httpErrors>
            <remove statusCode="403" subStatusCode="-1" />
            <remove statusCode="404" subStatusCode="-1" />
            <error statusCode="404" prefixLanguageFilePath="" path="/redir.aspx" responseMode="ExecuteURL" />
            <error statusCode="403" prefixLanguageFilePath="" path="/redir.aspx" responseMode="ExecuteURL" />
        </httpErrors>
    </system.webServer>
</configuration>

1 Ответ

1 голос
/ 15 марта 2011

Если вы находитесь в классическом конвейерном режиме, вы можете использовать опцию «вызывать обработчик, только если запрос сопоставлен с файлом». Мне пришлось включить его для двух сопоставлений .aspx - я думаю, что один был 32-разрядным, а другой - 64.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...