Вы правы, что значение конфигурации maxUrlLength недоступно, недоступно ASP.net, так, как оно доступно в предыдущей версии. Чистая причина этого в том, что предыдущая версия поддерживает только IIS и Windows, поэтому она тесно интегрирована с этим. Теперь он поддерживается другой ОС и делает это так, как они это делали, чтобы свернуть прокси-сервер с фактическим сервером. Как в Windows IIS и Linux NGinx.
- IIS свяжется с Kestrel.
- NGIx будет измельчать с помощью пустельги.
Теперь необходимо настроить фильтрацию или настройку URL-адреса на уровне IIS или NGinx.
Если вы работаете в Windows, вы найдете функцию «Фильтрация запросов» и для этого вам нужно добавить файл Web.config. (Я не тестировал NGInx)
Вы должны сделать что-то вроде этого.
<system.webServer>
<!-- Here you have other settings related to handlers.-->
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="3000000" maxUrl="10241" maxQueryString="20481" />
</requestFiltering>
</security>
</system.webServer>
Похоже, что этот параметр не сделал его на версии 1.0. Взгляните на эту проблему: https://github.com/aspnet/KestrelHttpServer/issues/475 –
Это функция вашего внешнего сервера (например, IIS или NGinx). ASP.NET Core еще не имеет ограничений на это значение. – Tratcher