You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IIS配置*.it.test.com域名HTTP转HTTPS的URL重写规则故障排查

现有规则问题排查

  • 语法不匹配:规则声明了patternSyntax="Wildcard"(通配符语法),但HTTP_HOST的匹配规则写的是正则表达式格式^it.test.com$,两种语法混用导致匹配失效。
  • 匹配范围错误:就算切换为正则语法,原有规则^it.test.com$仅能精准匹配主域名it.test.com,无法覆盖*.it.test.com下的所有子域名(如aa.it.test.com、bb.it.test.com)。

正确配置方案

方案1:正则匹配模式(更灵活,推荐)

修改语法规则为正则模式,调整域名匹配规则即可适配所有子域:

<rule name="Redirect *.it.test.com to HTTPS" enabled="true" patternSyntax="ECMAScript" stopProcessing="true">
    <match url="*" ignoreCase="true" negate="false" />
    <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
        <!-- 匹配所有*.it.test.com子域,包含it.test.com本身 -->
        <add input="{HTTP_HOST}" ignoreCase="true" matchType="Pattern" pattern="^(.+\.)?it\.test\.com$" />
        <add input="{HTTPS}" pattern="off" />
    </conditions>
    <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" appendQueryString="false" redirectType="Permanent" />
</rule>

如果不需要匹配纯it.test.com,仅匹配子域名,可将上述pattern修改为^.+\.it\.test\.com$;生产环境建议使用301永久重定向,测试阶段可改为Temporary临时重定向。

方案2:通配符匹配模式(兼容原有语法)

如果要保留Wildcard语法,直接调整域名匹配规则即可:

<rule name="Redirect *.it.test.com to HTTPS" enabled="true" patternSyntax="Wildcard" stopProcessing="true">
    <match url="*" ignoreCase="true" negate="false" />
    <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
        <add input="{HTTP_HOST}" ignoreCase="true" matchType="Pattern" pattern="*.it.test.com" />
        <add input="{HTTPS}" pattern="off" />
    </conditions>
    <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" appendQueryString="false" redirectType="Temporary" />
</rule>

注意通配符模式下*.it.test.com仅匹配子域名,不包含it.test.com本身。

内容的提问来源于stack exchange,提问作者Birger

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 23:21:00