Я знаю, что это старый, но некоторые типы ответов не передаются в .net для обработки. Вместо этого они должны обрабатываться на уровне IIS. Если вам нужна другая страница, основанная на ответе, вам нужно зайти в диспетчер IIS и найти раздел, который управляет страницами ошибок (в зависимости от используемой версии IIS.
Затем добавьте код состояния, который вы хотите захватить, и дайте ему страницу, на которую вы хотите направить браузер.
Я знаю, что вы упомянули IIS 6, но у меня нет доступа к одному из этих серверов. Для IIS 7, нажмите на сайт. Перейдите в раздел IIS> Страницы ошибок. Нажмите Добавить. Введите код (401.1) и укажите путь к странице вашего сайта. Убедитесь, что эта страница доступна для анонимных пользователей.
UPDATE:
Я нашел новую информацию. Вы можете справиться с этим в вашем web.config. Для получения более подробной информации смотрите следующий сайт: learn.iis.net
В разделе ошибок вашего web.config сделайте следующее (как пример):
<error statusCode="401" subStatusCode="1" prefixLanguageFilePath="c:\inetpub\custerr" path="401_1.htm" />
Я не знаю, можете ли вы использовать для этого ASPX-страницы, но это точно выглядит так. Однако, вероятно, они должны быть полностью автономными.
Документация Microsoft по субтаткоду находится на MSDN . По их словам, он работает ТОЛЬКО на IIS 7, .Net 3.0+ и при использовании режима интегрированного конвейера. Это может быть немного ограничено в зависимости от вашего приложения.