【问题标题】:Url rewrite rules not working in Azure web appURL 重写规则在 Azure Web 应用程序中不起作用
【发布时间】:2018-12-14 07:11:14
【问题描述】:

我有一个托管在 Azure 中的 Sitecore 8 应用程序。我有几个域子域指向同一个应用程序,但已被弃用,需要重定向到主站点。我的主要网站是 www.mysite.com。我对每个子域都有单独的端点,例如 www.mysite-nl.com 的端点主机名为 mysite-prod-01-cd-nl.azureedge.net。我的 web.config 中有以下重写,但它没有重定向:

     <rule name="nl redirect" stopProcessing="true">
      <match url="(.*)" />
      <action type="Redirect" url="http:// www.mysite.com" redirectType="Permanent"/>
      <conditions>
        <add input="{HTTP_HOST}" pattern="^(www\.)?mysite-prod-01-cd-nl.azureedge.net$" />
      </conditions>
    </rule>

【问题讨论】:

  • 您的重定向网址中有一个空格。我并不是说这是问题所在,但您可能想要纠正它。
  • Azureedge.net不是CDN的域名吗?原点设置如何?

标签: azure url-rewriting sitecore url-rewrite-module


【解决方案1】:

它不起作用,因为您将 &lt;action&gt;&lt;conditions&gt; 混合在一起。一般来说:

  • Conditions – 可选条件集合用于指定在 URL 字符串与规则模式匹配时要执行的其他逻辑操作。在条件范围内,您可以检查 HTTP 标头或服务器变量的某些值,或者验证请求的 URL 是否对应于物理文件系统上的文件或目录。
  • Action – 该操作用于指定如果 URL 字符串匹配规则模式并且满足所有规则条件时要执行的操作。

所以你的行为应该像这样重定向你:

<action type="Redirect" url="mysite-prod-01-cd-nl.azureedge.net" redirectType="Permanent"/>

更多信息在这里:URL Rewrite Module Configuration Reference

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-28
    • 2015-07-05
    • 1970-01-01
    • 2016-05-12
    • 2021-04-11
    • 1970-01-01
    • 2011-07-17
    相关资源
    最近更新 更多