Как я могу перенаправить ответ HTTP IIS7 “403 запрещенных” к HTTPS?

Я попросил, чтобы наш веб-хост установил SSL на нашем веб-сайте, таком, что Запросы HTTP автоматически перенаправят к HTTPS.

Они говорят, что это сделано, однако при доступе к сайту через HTTP, который я теперь получаю:

Response HTTP/1.1 403 Forbidden

HTTPS хорошо работает.

Я попросил это быть исправленным, и мне сказали, что это не настройка сервера (которым они управляют), и должен быть зафиксирован через web.config (который у меня есть доступ к).

Я попытался неудачно использовать следующие изменения, чтобы поймать это 403 и перенаправить его:

<system.web>
    <customErrors defaultRedirect="/test.html" mode="On"></customErrors>
</system.web>

<httpErrors errorMode="Custom">
    <remove statusCode="403" subStatusCode="-1" />
    <error statusCode="403" prefixLanguageFilePath="" path="/test.html" responseMode="ExecuteURL" />
</httpErrors>  

Как я могу разрешить этот таким образом, что HTTP перенаправит к - эффективно требующий - HTTPS?

6
задан 18 June 2015 в 01:02
1 ответ

Оказалось, что хост сначала должен был снять флажок «Требовать SSL», затем я смог перенаправить трафик в web.config через:

<rule name="HTTP to HTTPS redirect" stopProcessing="true">
  <match url="(.*)" />
    <conditions>
      <add input="{HTTPS}" pattern="off" ignoreCase="true" />
    </conditions>
 <action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
</rule>
7
ответ дан 3 December 2019 в 00:25

Теги

Похожие вопросы