Почему перезапись IIS на HTTPS вызывает 301 ошибку цикла? - PullRequest
0 голосов
/ 29 октября 2019

У меня есть следующее правило в web.config моего веб-сайта Asp.net MVC.

Когда я включаю это правило, оно вызывает 301 Ошибка цикла!

<rule name="Redirect to https" enabled="true" patternSyntax="Wildcard" stopProcessing="true">
    <match url="*" negate="false" />
    <conditions logicalGrouping="MatchAny">
            <add input="{HTTPS}" pattern="OFF" />
    </conditions>
    <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" />
 </rule>

Протестируйте веб-сайтURL without https с CURL:

enter image description here

Примечания

  • Я получаю такой же цикл из 302 ошибок, даже япопробуйте URL with https, когда правило включено.
  • Я использую Cloudflare SSL на своем веб-сайте

Что вы думаете об этой проблеме? Где проблема?

1 Ответ

0 голосов
/ 30 октября 2019

причиной проблемы является режим шифрования Flexible SSL на вкладке «Обзор» приложения Cloudflare SSL / TLS, который шифрует трафик между браузером и сетью Cloudflare по протоколу HTTPS. Однако, если включен параметр Flexible SSL, Cloudflare отправляет запросы на исходный веб-сервер в незашифрованном виде по протоколу HTTP. Циклы перенаправления происходят, если ваш исходный веб-сервер настроен на перенаправление всех HTTP-запросов к HTTPS при использовании параметра Flexible SSL. Циклы перенаправления также могут возникать при использовании опции Полный или Полный (строгий) SSL. Единственное отличие состоит в том, что Cloudflare связывается с вашим исходным веб-сервером через HTTPS, и цикл перенаправления происходит, если ваш исходный веб-сервер перенаправляет HTTPS-запросы на HTTP.

Чтобы решить проблему с циклами перенаправления, вы можете обратиться к любой опции из нижеприведенного списка:

  1. Удалите перенаправления HTTP-HTTPS из исходной конфигурации веб-сервера.

  2. Обновите параметр Cloudflare SSL на вкладке Обзор приложения SSL / TLS:

Если в данный момент установлено значение «Гибкий», обновите его до «Полный», если на исходном веб-сервере настроен сертификат SSL. (Не рекомендуется) Если в настоящий момент установлено значение «Полный», обновите значение «Гибкий».

Устранение ошибок в циклах перенаправления

...