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

在web.config中配置网站流量重定向的问题求助

IIS重定向规则修正方案

你的原规则存在三个核心问题:

  • {HTTP_HOST}仅匹配请求的主机名(即abc.com),你用它匹配^abc/staging完全错误,staging是URL路径的一部分,不属于主机名范畴。
  • 重定向URL写死为xyz.com/,没有保留原路径中staging之后的部分,导致所有页面都跳转到根目录,无法对应about.html这类具体页面。
  • 单条件场景下使用MatchAny逻辑分组无意义,属于冗余设置。

以下是正确的重写规则:

<rule name="StagingToXyzRedirect" stopProcessing="true">
    <match url="^staging/(.*)" />
    <conditions>
        <add input="{HTTP_HOST}" pattern="^abc\.com$" />
    </conditions>
    <action type="Redirect" url="https://xyz.com/{R:1}" redirectType="Permanent" />
</rule>

规则说明:

  • <match url="^staging/(.*)" />:匹配所有以staging/开头的URL路径,(.*)会捕获staging/之后的所有内容(比如about.html),后续用{R:1}调用这个捕获值。
  • <conditions>:限定仅当请求主机是abc.com时触发规则,避免影响其他域名的请求。
  • <action>:将请求永久重定向到xyz.com加上捕获的路径部分,实现abc.com/staging/about.html → xyz.com/about.html的对应跳转,建议明确协议(https://或http://),避免跳转后出现协议异常。

注意事项:

  • 确保你的IIS服务器已安装URL Rewrite模块,未安装需先在IIS管理器中添加该模块。
  • 规则需放置在站点根目录web.config文件的<rewrite><rules>节点内部。

内容的提问来源于stack exchange,提问作者Peter Van Edom

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 18:55:01