К сожалению, у меня пока недостаточно репутации, чтобы комментировать ответ @Jonas Wik, поэтому я должен опубликовать его в качестве ответа.Йонас находится на правильном пути и помог решить ту же ситуацию, что и я, с веб-приложением ASP.NET Core.Однако, просмотрев документы Microsoft на сервере Kestrel, я обнаружил, что метод Jonas нужно немного изменить, чтобы получить наиболее полный ответ.Большая часть заслуг должна идти ему за то, что он направил нас всех в правильном направлении.
Он предлагает использовать цепочку вспомогательного метода UseKestrel()
при создании и настройке компоновщика веб-хостинга.Однако, согласно документам Microsoft, CreateDefaultBuilder()
уже вызывает UseKestrel()
за кулисами.Когда требуется дополнительная настройка, для дальнейшей настройки Kestrel следует использовать вспомогательный метод ConfigureKestrel()
.Обновленный ответ Джонаса будет выглядеть следующим образом:
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.ConfigureKestrel((context, options) =>
{
options.Limits.MaxRequestHeadersTotalSize = 1048576;
});
Полное раскрытие: я сделал и то, и другое, и не замечаю разницы или каких-либо неблагоприятных побочных эффектов.Тем не менее, лучше придерживаться их документированной практики, чтобы гарантировать, что ничто не сойдет с пути в будущем развитии!
Как использовать Kestrel в основных приложениях ASP.NET