将非www重定向到www以获取内部页面的网址

时间:2018-06-06 11:41:55

标签: redirect url-rewriting web-config

我想重定向:

  • domain.co.uk到www.domain.co.uk和
  • domain.co.uk/contact-us至www.domain.co.uk/contact-us。

我已经尝试过使用ECMAScript和Wildcard的十几个web.config规则,但第一个已经完成,但第二个要么保持不变,要么重定向到www.domain.co.uk即主页。目前的一个例子如下:

  <rule name="Redirect domain.com to www" patternSyntax="Wildcard" stopProcessing="true">
      <match url="*" />
      <conditions>
        <add input="{HTTP_HOST}" pattern="^domain.co.uk/*" />
      </conditions>
      <action type="Redirect" url="http://www.domain.co.uk/{C:1}/{R:0}"  />
    </rule>

1 个答案:

答案 0 :(得分:0)

这将在保留HTTP和HTTPS协议的同时重定向到www版本:

<rule name="ensurewww" stopProcessing="true">
  <match url=".*" />
  <conditions>
    <add input="{CACHE_URL}" pattern="^(.+)://(?!www)(.*)" />
  </conditions>
  <action type="Redirect" url="{C:1}://www.{C:2}" redirectType="Permanent" />
</rule>