У меня есть приложение ASP.NET Core 2.0 MVC, которое отлично работает при запросе через HTTPS. Например. https://localhost:44331
или https://example.com
Однако, если вы попытаетесь получить к нему доступ через HTTP, произойдет сбой по истечении времени ожидания. Как при локальном запуске, так и при развертывании на рабочем сервере (IIS 8).
Я решил, что мне просто нужно настроить перенаправление HTTP на HTTPS, и, таким образом, добавил следующий код к методу Configure
в Startup.cs
:
RewriteOptions options = new RewriteOptions().AddRedirectToHttps(StatusCodes.Status301MovedPermanently);
app.UseRewriter(options);
Но это не имеет никакого эффекта. Для HTTP-запросов истекает время ожидания, а для HTTPS - нет.
В конечном итоге я пытаюсь сделать так, чтобы пользователям не приходилось вводить https://example.com
для доступа к сайту. Вместо этого я хочу, чтобы пользователи могли просто набирать example.com
, а затем перенаправляться на https://example.com
.
Я почти целый день бьюсь головой об стену по этому вопросу, поэтому любые предложения будут с благодарностью приняты.