Правило перезаписи IIS7, которое заставляет строчные буквы для указанных страниц в домене - PullRequest
2 голосов
/ 19 января 2012

Я пытаюсь создать правило перезаписи IIS7, которое принудительно вводит строчные буквы для указанных страниц, чтобы я мог переопределять чувствительные к регистру входящие ссылки на мой сайт, чтобы избежать дублирования контента Google по URL-адресам, таким как / Contact и / contact.Я нашел правило, которое работает хорошо, за исключением того, что оно включает в себя все страницы домена, а затем вы можете указать исключаемые страницы.

<rule name="Lower Case Rewrite" enabled="true" stopProcessing="true">
<match url=".*[A-Z].*" ignoreCase="false" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{URL}" pattern="/ordering/shoppingcart/" negate="true" />
</conditions>
<action type="Redirect" url="{ToLower:{R:0}}" redirectType="Permanent" />
</rule>

Можно ли инвертировать правило, чтобы оно не применялось кстрочные, кроме тех страниц, которые я указываю в правиле.Причина, по которой я хочу сделать это так, заключается в том, что администратор, корзина и другие разделы сайта не работают, когда реализовано правило, а сайт слишком велик для проверки всех страниц и вызовов обработчиков.

Любойпомощь была бы отличной!

Ответы [ 2 ]

3 голосов
/ 16 марта 2012
<rewrite>
    <rules>
        <rule name="LowerCaseRule1" stopProcessing="true">
            <match url="[A-Z]" ignoreCase="false" />
            <action type="Redirect" url="{ToLower:{URL}}" />
        </rule>
    </rules>
</rewrite>
1 голос
/ 11 января 2013

Вот так:

<rule name="Lower Case Rewrite" enabled="true" stopProcessing="true">
  <match url=".*[A-Z].*" ignoreCase="false" />
  <conditions logicalGrouping="MatchAny" trackAllCaptures="false">
    <add input="{URL}" pattern="/content/" />
    <add input="{URL}" pattern="/content2/" />
  </conditions>
<action type="Redirect" url="{ToLower:{R:0}}" redirectType="Permanent" />
</rule>

Сгруппируйте свои условия с помощью MatchAny, затем добавьте все шаблоны, к которым должно применяться правило (но не указывайте атрибут negate).

...