【问题标题】:IIS rewrite rules to enforce HTTPS and one of several canoncial domainsIIS 重写规则以强制执行 HTTPS 和几个规范域之一
【发布时间】:2018-09-17 01:18:06
【问题描述】:

我正在关注的网站有多个规范域 - 例如

example.com
example.com.au
example.co.nz

以及一些需要重定向到规范域之一的“其他”域(例如,example.us 应该转到 example.com)。

所有网站都应通过 HTTPS 访问

是否可以为每个规范域编写一个简洁的规则,将用户重定向到该域 iff

  • 它们不在规范域中(例如www.example.comexample.us)或
  • 连接不是 HTTPS

我想我可以看到如何使用多个规则来做到这一点,但它很快就会变得繁琐(所以简洁的规则会更好)

【问题讨论】:

    标签: iis http-redirect url-rewrite-module


    【解决方案1】:

    我通过以下方式实现了它(使用# 分隔符将多个变量推入input):

    <rule name="Redirect to example.co.nz" enabled="true" stopProcessing="true">
      <match url="(.*)" />
      <conditions  logicalGrouping="MatchAll">
        <add input="{HTTPS}#{HTTP_HOST}" pattern="(^OFF)|(^.*#www\.)" />
        <add input="{HTTP_HOST}" pattern="^(www\.)?example.co.nz$" />
      </conditions>
      <action type="Redirect" url="https://example.co.nz/{R:1}" />
    </rule>
    

    【讨论】:

      猜你喜欢
      • 2013-08-14
      • 2020-10-22
      • 1970-01-01
      • 2021-12-30
      • 2017-08-09
      • 2021-02-06
      • 2018-09-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多