Назад | Перейти на главную страницу

Избегание ответа 401 на каждый запрос с использованием NTLM

У нас есть приложение ASP.NET 3.5, использующее NTLM на основе проверки подлинности Windows. Система работает в частной сети, которая фактически распределена по разным географическим точкам (подключена через VPN).

Сейчас мы пытаемся оптимизировать работу сайта. Поскольку NTLM работает, каждый новый запрос к IIS состоит из 3 разных запросов, а первые 2 - это 401 ответ. Мы стараемся минимизировать количество этих запросов, чтобы они были только в начале сеанса. Мы нашли решение, описанное в Повышение производительности приложений IIS 6.0. К сожалению, это ничего не изменило, и мы продолжаем получать ответ 401 (что требует времени).

Чтобы увидеть трафик, я сначала использовал Скрипач применение. Почему-то, когда я использую Fiddler, в начале сеанса выполняется только 1 процесс аутентификации (именно так, как я хочу), но когда я закрываю приложение Fiddler и проверяю трафик через Wireshark Я вижу, что у меня все еще есть ответ 401 на каждый запрос.

Клиенты используют Internet Explorer 6, IIS версии 6.

Как мы можем решить эту проблему?

Просто мысль, но поскольку скрипач является прокси-сервером, он может держать ваши TCP / IP-соединения открытыми. Увидеть Страница справки Fiddler относительно Повторное использование подключений к серверам и Повторное использование клиентских подключений.

Вы также должны убедиться, что у вас отмечены флажки «Использовать HTTP 1.1» и «Использовать HTTP 1.1 через прокси», и дважды проверить, что ваш KeepAliveTimeout параметр реестра не очень низкий.