重写规则以从一种语言重定向到除某些页面之外的其他语言



在下面提到的重定向规则中,我将网站"fr-ca"语言重定向到"en"语言,除了入门页面。这意味着如果网址包含载入页面,则不应重定向到"en"语言。但它总是重定向到"en"。请让我知道我的规则有什么问题。提前谢谢。

  <rule name="Site-fr-CA to en" stopProcessing="false">
      <match url="^fr-ca(.*)$" />
      <conditions>
        <add input="{HTTP_HOST}" pattern="^(.*)www.TestSite.com(.*)$" ignoreCase="false" />
        <add input="{HTTP_HOST}" pattern="^fr-ca/onboarding(.*)$" negate="true" />
      </conditions>
      <action type="Redirect" redirectType="Permanent" url="/en{R:1}" />
    </rule>
 </rules>

问题是第二个条件中的HTTP_HOST。请改用PATH_INFO:

<rule name="Site-fr-CA to en" stopProcessing="false">
  <match url="^fr-ca(.*)$" />
  <conditions>
    <add input="{HTTP_HOST}" pattern="^(.*)www.TestSite.com(.*)$" ignoreCase="false" />
    <add input="{PATH_INFO}" pattern="^/fr-ca/onboarding(.*)$" negate="true" />
  </conditions>
  <action type="Redirect" redirectType="Permanent" url="/en{R:1}" />
</rule>

相关内容

  • 没有找到相关文章

最新更新