Я пытаюсь переписать ссылки из формы:Переписывание URL-адресов с https: // для HTTP: // в IIS7
https://example.com/about
форме
http://example.com/about
с использованием IIS7 URL rewriting:
<!-- http:// to https:// rule -->
<rule name="ForceHttpsBilling" stopProcessing="true">
<match url="(.*)billing/(.*)" ignoreCase="true" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="false" />
</conditions>
<action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}{REQUEST_URI}" />
</rule>
<!-- https:// to http:// rule -->
<rule name="ForceNonHttps" stopProcessing="true">
<match url="(.*)billing/(.*)" ignoreCase="true" negate="true" />
<conditions>
<add input="{SERVER_PORT}" pattern="^443$" />
</conditions>
<action type="Redirect" redirectType="Found" url="http://{HTTP_HOST}{REQUEST_URI}" />
</rule>
Я в затруднении; Я просматривал веб-страницы для примеров и пробовал каждый синтаксис, о котором я могу думать. Правила перезаписи, которые я укажу, просто не работают на всех для любых запросов https, как если бы все запросы https://
были без изменений для механизма перезаписи.
правила работают нормально; см. ответ ниже.
Запах как элементарная функция безопасности 'feature' для меня –
Это пахнет вопросом о сбое сервера для меня ... –
@Charlie, no.Это один из тех вопросов, который является как кодированием, так и администратором, поэтому оставьте его на том сайте, на котором он был запущен (например, на многих сценариях). –