IIS URL 重写未传递参数

IIS URL 重写未传递参数

我想重写这个 URL:

blah.com/web/code=BSIL

更改为:

blah.com/web/logon.html?app=BSIL&embed=true&installApp=false

它与 Redirect 一起工作,但是与 Rewrite 一起工作,参数不会被传递。

我曾尝试使用条件和重写映射来解决示例问题,但是这变得很混乱而且我无法使其工作,所以我认为我应该从头开始以保持简单。

规则:

<rewrite>
    <globalRules>
        <rule name="test" patternSyntax="Wildcard" stopProcessing="true">
            <match url="*web/code=BSIL" />
            <action type="Rewrite" url="{R:1}/web/logon.html?app=BSIL&amp;embed=true&amp;installApp=false" appendQueryString="false" />
        </rule>
        <rule name="redirect" patternSyntax="Wildcard" stopProcessing="true">
            <match url="*web/code=EC" />
            <action type="Redirect" url="{R:1}/web/logon.html?app=EC&amp;embed=true&amp;installApp=false" appendQueryString="false" redirectType="Temporary" />
        </rule>
    </globalRules>
</rewrite>

使用重定向的 Chrome 屏幕截图

使用 Rewrite 的 Chrome 屏幕截图

相关内容