Я получаю ошибку сброса соединения в браузерах, когда перенаправляю URL с http на https . Я пытаюсь определить местонахождение проблемы и заглянул в C: \ Windows \ System32 \ LogFiles \ HTTPERR
и вижу только ошибки Timer_ConnectionIdle
в журнале. Из того, что мне удалось найти, это не связано.
В папке FailedReqLogFiles
нет журналов, и я не вижу ничего, кроме журналов доступа в папке W3SVC1
.
Я совершенно не знаю, куда идти отсюда. Вот мое правило перенаправления.
Соответствующий URL
Запрошенный URL: соответствует шаблону
Использование: регулярные выражения
Шаблон: . *
и Игнорировать регистр
Условия
Логическая группировка: Соответствовать всем
Ввод: {HTTPS}
Тип: соответствует шаблону
Шаблон: выкл.
Переменные сервера
Пусто
Действие
Тип действия: Перенаправление
URL перенаправления: https: // {SERVER_NAME} / {R: 0}
Добавить строку запроса: проверено
Тип перенаправления: Постоянное (301)
Этот фрагмент из web.config
мне подходит.
<rule name="Redirect HTTP to HTTPS" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="OFF" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="SeeOther" />
</rule>
Основное различие между этой конфигурацией и вашей конфигурацией, похоже, HTTP_HOST
vs SERVER_NAME
. Я использую шаблон замены R: 1
, тогда как вы используете R: 0
, но это можно объяснить тем, как я определил свой шаблон соответствия как (. *)
, а не . *
.