Я пытаюсь настроить https для моего веб-сайта, размещенного на IIS на Windows Server 2012. Мой проект является приложением WebApi по умолчанию из ASP.NET Core 2.1, и я использую win-acme для настройки IISс сертификатом Let's Encrypt.
Все работает нормально, за исключением того, что трафик http не перенаправляется на https.Если я проверяю логи, я получаю:
warn: Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware[3]
Failed to determine the https port for redirect.
Я думал, что это можно легко решить, добавив это в мой ConfigureServices
метод:
services.AddHttpsRedirection(options =>
{
options.RedirectStatusCode = StatusCodes.Status307TemporaryRedirect;
options.HttpsPort = 443;
});
Однако теперь я вообще не могу получить доступ к своему веб-сайту.Chrome выдает мне сообщение:
Эта страница не работает. Www.example.com перенаправляет вас слишком много раз
Если я проверяю логи, то показывает кучутаких строк:
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
Request starting HTTP/1.1 GET http://example.com
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
Request finished in 0.1026ms 307
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
Request starting HTTP/1.1 GET http://example.com
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
Request finished in 0.1837ms 307
Кто-нибудь знает, что я делаю неправильно?