You need to enable JavaScript to run this app. web.config配置<rewrite>重定向规则不生效 无法实现articles路径跳转
优惠活动
大模型
产品
解决方案
定价
更多

web.config配置<rewrite>重定向规则不生效 无法实现articles路径跳转

现有规则存在的问题

  • 路径匹配未捕获articles后的剩余路径:当前match url="articles"仅判断路径包含articles字符串,没有提取articles之后的路径部分,导致跳转后无法拼接对应子路径
  • 域名匹配规则不完整:条件中的pattern="^testsite.co.uk$"仅匹配不带www的主域名,无法匹配示例中带www的www.testsite.co.uk域名
  • 跳转配置不符合需求:
    • action中硬编码了http协议,会将原https访问强制跳转到http,和预期的https跳转不符
    • 跳转目标路径没有拼接捕获到的子路径,所有匹配请求只会跳转到/about-park/blog/根路径
    • 关闭了appendQueryString,如果原路径带查询参数会丢失,若有保留参数需求需要开启

调整后可实现需求的规则

<rule name="Redirect Articles" enabled="true" stopProcessing="true">
  <match url="^articles/(.*)$" />
  <conditions>
    <add input="{HTTP_HOST}" pattern="^(www\.)?testsite\.co\.uk$" />
  </conditions>
  <action type="Redirect" url="https://{HTTP_HOST}/about-park/blog/{R:1}" appendQueryString="true" redirectType="301" />
</rule>

调整说明

  • match url="^articles/(.*)$":仅匹配路径开头为articles/的请求,同时用括号捕获articles/之后的所有内容,存到变量{R:1}中
  • 域名匹配规则调整为^(www\.)?testsite\.co\.uk$,同时兼容带www和不带www的域名
  • 跳转协议改为https,目标路径末尾拼接{R:1}将捕获的子路径带上,实现对应路径跳转
  • 开启appendQueryString保留原请求的查询参数,不需要可以改回false
  • 新增redirectType="301"设置为永久重定向,有利于SEO,如果是临时调试可以改为302

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 02:48:03