Umbraco和UrlRewriting.Net强制www为规范网址

时间:2014-08-22 20:40:40

标签: asp.net url-rewriting umbraco umbraco7 urlrewriting.net

我一直在努力让Umbraco(7.1.4)为没有www的网址添加前缀。我无法理解UrlRewriting.Net的语法。

我目前的解决方案是:

<add name="forcewww http" 
    virtualUrl="http\://(?!www\.)" 
    redirectMode="Permanent" 
    destinationUrl="http://www." 
    ignoreCase="true" 
    redirect="Domain" /> 

但我希望不要触发Umbraco后端的URL(包含/ umbraco)。 类似于(\/umbraco|\/data|\/install|\/usercontrols|\/umbraco_client))

该解决方案应对多个域/ tld有效。

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

我们在urlReWriting.config中使用此语法:

<add name="SEOfixMyExampleDomain" 
     virtualUrl="^http\://example.com/(.*)"
     rewriteUrlParameter="ExcludeFromClientQueryString"
     destinationUrl="http://www.example.com/$1"
     redirect="Domain"
     redirectMode="Permanent"
     ignoreCase="true" />

(。*)被转换为目标域上的$ 1。如果您想让它跨域,您可以通过通配符匹配替换域。但我不会这样做。 对于我们在umbraco中配置的每个域,我们在UrlRewriting.config中添加了一个新行。工作快速而完美。容易维护的人决定在一个域上具有反向(非wwww默认值)。

我们还重定向了特定于umbraco的URL,因为:

    部署后应删除
  • / install
  • /未在浏览器上调用usercontrols
  • /数据未被任何最近的包使用
  • / umbraco和/ umbraco_client:为什么不

除此之外,我们注意到规范网址也有助于索引正确的域名...