Правила перезаписи URL не работают в веб-приложении Azure - PullRequest
0 голосов
/ 05 июля 2018

У меня есть приложение Sitecore 8, размещенное в Azure. У меня есть несколько поддоменов доменов, которые указывают на одно и то же приложение, но устарели и требуют перенаправления на основной сайт. Мой основной сайт www.mysite.com. У меня есть отдельные конечные точки для каждого субдомена, такие как www.mysite-nl.com с именем хоста конечной точки mysite-prod-01-cd-nl.azureedge.net. У меня есть следующий переписать в моем web.config, но он не перенаправляет:

     <rule name="nl redirect" stopProcessing="true">
      <match url="(.*)" />
      <action type="Redirect" url="http:// www.mysite.com" redirectType="Permanent"/>
      <conditions>
        <add input="{HTTP_HOST}" pattern="^(www\.)?mysite-prod-01-cd-nl.azureedge.net$" />
      </conditions>
    </rule>

1 Ответ

0 голосов
/ 10 июля 2018

Это не работает, потому что вы смешали <action> с <conditions>. В общем:

  • Условия - Дополнительный набор условий используется для указания дополнительных логических операций, которые должны выполняться, если строка URL-адреса соответствует шаблону правила. В этих условиях вы можете проверить определенные значения заголовков HTTP или серверных переменных или проверить, соответствует ли запрошенный URL-адрес файлу или каталогу в физической файловой системе.
  • Действие - Действие используется, чтобы указать, что делать, если строка URL соответствует шаблону правила и все условия правила выполнены.

Итак, ваше действие должно перенаправить вас так:

<action type="Redirect" url="mysite-prod-01-cd-nl.azureedge.net" redirectType="Permanent"/>

Больше информации здесь: Справочник по конфигурации модуля перезаписи URL .

...