URL регулярного выражения совпадает на чем угодно, кроме www - PullRequest
0 голосов
/ 15 июля 2011

Я использую IIS7 и модуль перезаписи URL.

Я хотел бы использовать регулярное выражение для сопоставления с любым поддоменом, кроме www.

Итак ...

frog.domain.co.uk = Match
m.domain.co.uk = Match
anything.domain.co.uk = Match
www.domain.co.uk = No match

Таким образом, я могу перенаправить любой поддомен, который кто-то печатает ввернуться на www.

Ответы [ 3 ]

0 голосов
/ 15 июля 2011

Это будет соответствовать тому, что вы хотите:

^(?!=www\.).*

Что является негативным прогнозом для www..Не уверен, что вам нужен трейлинг .*

0 голосов
/ 15 июля 2011

Используйте это правило - оно будет перенаправлено на www.exmaple.com домен, если домен другой:

<system.webServer>
      <rewrite>
          <rules>
              <rule name="Force www" stopProcessing="true">
                  <match url="(.*)$" />
                  <conditions>
                      <add input="{HTTP_HOST}" pattern="^www\.example\.com" negate="true" />
                  </conditions>
                  <action type="Redirect" url="http://www.example.com/{R:1}" />
              </rule>
          </rules>
      </rewrite>
  </system.webServer>

Вы можете немного его оптимизировать, если не хотите вводить доменное имя дважды (example.com) - но это очень незначительная вещь, и в зависимости от ваших обстоятельств / конфигурации это может быть нежелательно.

0 голосов
/ 15 июля 2011

для этого можно использовать 301 дюйм .htaccess.

...