У меня есть угловое приложение, которое я размещаю на веб-сайте Microsoft Azure. Я установил его с автоматической переадресацией всех запросов на HTTPS, установив расширение для меня: https://github.com/gregjhogan/redirect-http-to-https-site-extensionAzure Web App Правила перезаписи HTTP/HTTPS
Что приложение расширения делает то, что он добавляет файл applicationhost.xdt который выглядит следующим образом:
<?xml version="1.0" ?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<location path="%XDT_SITENAME%" xdt:Transform="InsertIfMissing" xdt:Locator="Match(path)">
<system.webServer xdt:Transform="InsertIfMissing">
<rewrite xdt:Transform="InsertIfMissing">
<rules xdt:Transform="InsertIfMissing" lockElements="clear">
<rule name="redirect HTTP to HTTPS" enabled="true" stopProcessing="true" lockItem="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
<add input="{WARMUP_REQUEST}" pattern="1" negate="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</location>
</configuration>
Теперь, работает отлично, и все будет перенаправлен на HTTPS. Теперь я столкнулся с новым требованием, и я хочу изменить правило перезаписи следующим образом: Перенаправить все запросы на HTTPS (как это сейчас), за исключением любого URL-адреса, который содержит следующее: «/ #/user/[Some случайный идентификатор пользователя] ".
Я читал разные сообщения и пробовал разные вещи, но настройка IIS и прочее вроде этого не совсем мой домен, и я изо всех сил пытаюсь это выяснить. Попробовать я чувствую, как близко, когда я добавил этот {REQUEST_URI} условие:
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
<add input="{REQUEST_URI}" negate="true" pattern=".*/#/user/.+" ignoreCase="true" />
<add input="{WARMUP_REQUEST}" pattern="1" negate="true" />
</conditions>
Я попытался перезагрузки Azure Web App, а также передислокации, но это Безразлично» t кажется, что все в порядке, все по-прежнему перенаправляется на HTTPS в соответствии с исходным правилом.
Спасибо за ответ, но, к сожалению, он не работал .. Im возникают проблемы отладки его. Любая идея отладки? –
отладка регулярного выражения? С помощью этого regextester.com не помогает? –
Да, это было полезно. Я имел в виду, что, когда я могу сказать, что регулярное выражение является правильным, но я все еще не получаю перенаправление, как я хочу. Как отлаживать фактическое перенаправление на сервере? Возможно ли это? –