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

Web.Config重写规则中例外路径传递GET参数报错排查

解决IIS中例外路径带GET参数返回404的问题

这种情况我之前排查过好几次,大概率是你的URL重写规则没正确处理查询字符串(Query String),或者例外规则的匹配范围没覆盖带参数的请求场景。咱们一步步来调整:

先排查核心问题点

你提到不带参数的/its或/its/能正常访问,但带?value1=value2就404,说明带参数的请求没触发你的例外规则,反而走到了转发到index.php的规则里,而index.php没法处理这个请求,所以返回404。

调整web.config的重写规则

下面是修正后的完整配置示例,我会逐个解释关键细节:

<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <!-- 第一个例外规则:处理/its所有变体(带/不带斜杠、带参数、带子路径) -->
        <rule name="ITS Exception" stopProcessing="true">
          <match url="^its(/.*)?$" />
          <!-- 如果你是跳转到外部地址,用Redirect;如果是本地路径,改成Rewrite -->
          <action type="Redirect" url="http://你的目标地址/its{R:1}" appendQueryString="true" />
          <!-- 本地路径的写法示例(比如指向站点内的its目录):
          <action type="Rewrite" url="/its{R:1}" appendQueryString="true" />
          -->
        </rule>

        <!-- 第二个例外规则,按照上面的格式复制修改即可 -->
        <rule name="Another Exception" stopProcessing="true">
          <match url="^你的第二个例外路径(/.*)?$" />
          <action type="Redirect" url="http://对应目标地址{R:1}" appendQueryString="true" />
        </rule>

        <!-- 所有其他请求统一转发到index.php -->
        <rule name="Forward to index.php" stopProcessing="true">
          <match url=".*" />
          <action type="Rewrite" url="/index.php" appendQueryString="true" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

关键配置说明

  • stopProcessing="true":这是重中之重!匹配到例外规则后,立刻停止执行后续规则,避免带参数的请求“漏网”走到index.php的转发规则里。
  • ^its(/.*)?$:用正则表达式覆盖所有以its开头的路径,包括/its、/its/、/its/xxx、/its/?xxx这些情况,{R:1}会自动捕获/后面的子路径(如果有的话),保证跳转路径完整。
  • appendQueryString="true":强制把原请求的查询字符串附加到目标URL后面,这样?value1=value2这类参数会被正确传递到例外路径的目标地址。

额外检查项

  1. 如果你之前的例外规则里加了<conditions>节点,里面如果有{QUERY_STRING}为空的限制,一定要删掉——这会直接过滤掉带参数的请求。
  2. 确认IIS的URL重写模块已经正确安装(你能正常转发其他请求,这个应该没问题,但还是可以在IIS管理器的模块列表里确认下)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 10:45:54