IIS に api.mydomain.com と mobileapi.mydomain.com の 2 つの asp.net サイトがあります。api へのリクエストの一部を mobileapi に書き換える必要があります。私はそれを働かせることができません。私の実験では、URL のドメイン名部分を rewrite で書き換えることはできないようです。リダイレクトするように変更すると、すべてが機能します(リダイレクトではなく書き換えが必要な場合を除く)
ただし、代わりに同じドメイン上の何かにリダイレクトすると、アクション URL を/testing/{R:0}
(ドメイン名なしで) にスワップすると、期待どおりに動作し、正常に書き換えられます。
私のweb.config
<modules runAllManagedModulesForAllRequests="true">
</modules>
<rewrite>
<rules>
<rule name="Proxy mobile API" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{REQUEST_URI}" pattern="([^/]+)" />
<add input="{StaticRewrites:{C:0}}" pattern="(.+)" />
<add input="{HTTP_HOST}" pattern="^api.mydomain.se$" />
</conditions>
<action type="Rewrite" url="http://mobileapi.mydomain.se/{R:0}" />
</rule>
</rules>
<rewriteMaps>
<rewriteMap name="StaticRewrites">
<add key="mobile" value=" " />
<add key="scripts" value=" " />
</rewriteMap>
</rewriteMaps>
</rewrite>