在IIS重写中提取参数-我哪里出错了?

在IIS重写中提取参数-我哪里出错了?,iis,url-rewriting,web-config,Iis,Url Rewriting,Web Config,如何将“/path?foo=abc&bar=def”重定向到“/path/abc/def” 我尝试了以下方法: <rule name="My rule" stopProcessing="false"> <match url="^path" /> <conditions> <add input="{QUERY_STRING}" pattern="foo=/[^&amp;]*/" /> <a

如何将“/path?foo=abc&bar=def”重定向到“/path/abc/def”

我尝试了以下方法:

<rule name="My rule" stopProcessing="false">
    <match url="^path" />
    <conditions>
        <add input="{QUERY_STRING}" pattern="foo=/[^&amp;]*/" />
        <add input="{QUERY_STRING}" pattern="bar=(.*)" />
    </conditions>
    <action type="Redirect" url="/path/{C:0}/{C:1}" appendQueryString="false" />
</rule>


但这甚至没有处理我的比赛。哪里出了问题?

我无法访问计算机来验证这一点,但我认为以下内容可以简化:

<rule name="Redirect old FAQ view" stopProcessing="false">
    <match url="^path.*" />
    <conditions>
        <add input="{QUERY_STRING}" pattern="^foo=([^&]*).*?bar=(.*)" />
    </conditions>
    <action type="Redirect" url="/path/{C:0}/{C:1}" appendQueryString="false" />
</rule>


有关URL重写过程的各个组件的更多详细信息。

经过几处小的更正(现在已反映在您的答案中),此操作非常有效。没有电脑最令人印象深刻-谢谢!