URL Rewrite IIS 7 - перенаправление URL не работает - PullRequest
5 голосов
/ 11 января 2010

У меня есть веб-сайт, работающий на IIS 7, связанный с портом 80, на который указывают 2 домена (для наших целей - example.com и test.com).

example.com - это наше каноническое имя, поэтому я бы хотел, чтобы любой клиент, обращающийся к test.com, был перенаправлен на example.com.

Я пытался использовать модуль перезаписи IIS 7. Однако, похоже, это не имеет никакого эффекта. Как мне с этим справиться?

Вот правило, которое я вставил в свой web.config.

<rewrite>
   <rules>
      <rule name="rule1" enabled="true" patternSyntax="Wildcard" stopProcessing="true">
          <match url="*test.com*" />
          <action type="Redirect" url="{R:1}example.com{R:2}" />
      </rule>
   </rules>
</rewrite>

1 Ответ

13 голосов
/ 11 января 2010

Я поступил неправильно. Это способ сделать это:

<rule name="Canonical Host Name" stopProcessing="true">
  <match url="(.*)" />
  <conditions>
     <add input="{HTTP_HOST}" negate="true" pattern="^www\.example\.com$" />
  </conditions>
  <action type="Redirect" url="http://www.example.com/{R:1}" redirectType="Permanent" />
</rule>

ref: http://blogs.iis.net/ruslany/archive/2009/04/08/10-url-rewriting-tips-and-tricks.aspx

...