Я просто столкнулся с подобной проблемой и выяснил, что, по-видимому, IISExpress (по крайней мере, когда он используется в Visual Studio) имеет по умолчанию 2-минутный тайм-аут соединения, после которого он отвечает 502 плохими шлюзами. Я мог бы решить эту проблему, добавив атрибут «ConnectionTimeOut» с соответствующим значением к элементу «webLimits» в .vs \ Config \ ApplicationHost.config:
<webLimits connectionTimeout="00:10:00" />
Вот еще информация на элементе webLimits: https://www.iis.net/configreference/system.applicationhost/weblimits
Обновление после обновления до ASP.NET Core 1.0: в элементе aspNetCore в файле web.config имеется атрибут requestTimeout. Этот атрибут также имеет значение по умолчанию 2 минуты.
<configuration>
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
<aspNetCore
processPath="%LAUNCHER_PATH%"
arguments="%LAUNCHER_ARGS%"
forwardWindowsAuthToken="false"
stdoutLogEnabled="false"
requestTimeout="00:10:00" /> <!-- <== -->
</system.webServer>
</configuration>
Для более атрибутов aspNetCore см: https://docs.microsoft.com/en-us/aspnet/core/hosting/aspnet-core-module
Другого способа установить это диспетчер IIS -> Редактор конфигурации, вы можете установить это как глобальные настройки или для конкретного сайта (также есть несколько таймаутов для разных вещей, если вам нужно). –