如何在 IIS 重写中保留双斜杠?

How to keep double slashes in IIS rewrite?

我注意到 IIS 删除了双斜杠,但我想保留它们。

<rules>
    <rule name="Rewrite to go.php">
        <match url="^go/(.*)" />
        <action type="Rewrite" url="go.php?url={R:1}" />
    </rule>
</rules>

在这种情况下 go/http://google.com 被重定向到 go.php?url=http:/google.com,请注意单斜线。我可以重写 go.php 以便它添加额外的斜杠但是.. 它可以从 Web.config 中修复吗?

go/http://google.com 不是有效的 url。您需要先对其进行 url 编码,即 go/http%3A%2F%2Fgoogle.com