Ошибка HTTP 400. Размер заголовка запроса слишком длинный в приложении ASP. NET MVC. - PullRequest
0 голосов
/ 07 февраля 2020

Мы создали приложение ASP. NET MVC, которое использует Windows Аутентификацию. Теперь у нас есть проблема с некоторыми пользователями, которые получают следующее сообщение об ошибке при доступе к сайту:

HTTP Error 400. The size of the request headers is too long.

Возможно, это связано с тем, что пользователи входят в слишком много групп Active Directory.

Я уже сделал следующее:

Я добавил следующие ключи реестра на сервере, на котором выполняется веб-приложение:

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ HTTP \ Parameters \ MaxFieldLength ==> 65536

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ HTTP \ Parameters \ MaxRequestBytes ==> 16777216

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Lsa \ Parameters = 655 >35> Max

Я также установил следующий ключ реестра на клиентском компьютере, через который я получил доступ к веб-приложению:

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Lsa \ Parameters \ MaxTokenSize ==> 65535

Затем я перезапустил все компьютеры и снова попытался получить доступ к веб-приложению. Я все еще получаю сообщение об ошибке выше.

Кто-нибудь есть идеи, что я могу сделать? Как я могу дополнительно отладить и проанализировать эту проблему?

1 Ответ

0 голосов
/ 07 февраля 2020

Можете ли вы проверить это снова, установив ниже ограничения длины запроса, как вам нужно в web.config?

<configuration>
    <system.web>
        <httpRuntime maxRequestLength="1048576" />
    </system.web>
</configuration>

и

<system.webServer>
   <security>
      <requestFiltering>
         <requestLimits maxAllowedContentLength="1073741824" />
      </requestFiltering>
   </security>
</system.webServer>
...