У меня проблема с web.config и принудительным использованием SSL. У меня есть правило переписывать url, потому что PHP-сайт Nette размещен на хосте.
<rule name="Rewrite Admin" stopProcessing="true">
<match url="^admin/(.*)" ignoreCase="true"/>
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="/admin/index.php" />
</rule>
Если я использую https в URL-адресе, запрос всегда перенаправляется на http. (https://example.com/admin -> example.com/admin). Когда я использую приведенное ниже правило SSL для всех запросов, возникает ошибка (слишком много перенаправлений). (есть 2 правила в web.config)
<rule name="Redirect to https">
<match url="(.*)"/>
<conditions>
<add input="{HTTPS}" pattern="Off"/>
<add input="{REQUEST_METHOD}" pattern="^get$|^head$" />
<add input="{REQUEST_URI}" pattern="^/(node)" negate="true" />
<add input="{REQUEST_URI}" pattern="^/(cbre)" negate="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}"/>
</rule>
Как заставить ssl для типа действия "перезаписать"?
Спасибо за помощь