У нас есть 2 веб-сервера в Azure с балансировкой нагрузки. Мы только что установили SSL на наших лазурных веб-сайтах, чтобы преобразовать их в HTTPS.
Теперь мы хотим, чтобы любой запрос, поступающий как HTTP, был изменен / перенаправлен на HTTPS-соединение.
Итак, я для тестирования создал опубликованный веб-сайт. на моем локальном компьютере, а затем добавил самоподписанный сертификат SSL, чтобы получить безопасный сайт. Затем я использовал перезапись URL, чтобы направить свой HTTP-сайт на HTTPS. Я использовал это в Web.config.
Это отлично работает на моем локальном опубликованном сайте.
Но это не работает на сервере Azure и вызывает внутреннюю ошибку сервера.
Есть идеи?
Я использовал следуя в сети. config для перезаписи URL
<rewrite>
<rules>
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="Off" />
<add input="{REQUEST_METHOD}" pattern="^get$|^head$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="SeeOther" />
</rule>
</rules>
Думаю, мы можем использовать URL Rewrite для перенаправления HTTP на HTTPS. Мы можем выполнить следующие шаги для достижения этой функции.
Если у вас нет URL Rewrite, мы можем скачать его из Microsoft.Вы можете найти ссылки из google. После успешной установки вы можете увидеть URL Rewrite в IIS.
Сайт связан следующими двумя протоколами:443 80
Настройка перезаписи URL.
Политика настройки в двух фингурах
Мы тестируем ее.
В Azure VM мы получаем доступ к http:// , он успешно перенаправляется на https://.
Теперь мы должны обратить внимание на настройку в Azure.
Правила NSG веб сервера.
Для правил ввода, 80 и 443 должны быть разрешены.
Набор балансировки нагрузки.
Я думаю, мы должны установить два набора балансировки нагрузки, 80 и 443.
Может быть, прикладной шлюз также сможет выполнить эту функцию.
.