Iis 在由同一web.config处理的两个URL之间重写URL

Iis 在由同一web.config处理的两个URL之间重写URL,iis,redirect,url-rewriting,web-config,Iis,Redirect,Url Rewriting,Web Config,当我尝试实现我创建的移动重定向时,我得到了一个重定向循环: <rewrite> <rules> <rule name="Mobile Rewrite" patternSyntax="ECMAScript" stopProcessing="true"> <match url=".*" ignoreCase="true" negate="false" /> <conditio

当我尝试实现我创建的移动重定向时,我得到了一个重定向循环:

<rewrite>
    <rules>
        <rule name="Mobile Rewrite" patternSyntax="ECMAScript" stopProcessing="true">
            <match url=".*" ignoreCase="true" negate="false" />
            <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
                <add input="{HTTP_HOST}" pattern="website.com.au" />
                <add input="{HTTP_USER_AGENT}" pattern="midp|mobile|phone" />
            </conditions>
            <action type="Redirect" url="http://mwebsite.com.au" appendQueryString="false" redirectType="Permanent" />
        </rule>
    </rules>
</rewrite>

不过,这是一个问题,mwebsite.com.au被分配到与website.com.au相同的web.config,因此它们由相同的web.config处理。这就是我正在处理的.net应用程序处理请求的方式(我无法将它们拆分,它们必须通过这个1 web.config)

我已经用google.com.au替换了mwebsite.com.au来测试这一点,它工作得很好,但由于某种原因,当URLEwrite必须通过相同的规则注入mwebsite.com.au时,它无法处理请求


任何帮助都将是惊人的

您的规则基本上是这样的:如果
{HTTP\u HOST}
包含
website.com.au
{HTTP\u USER\u AGENT}
包含任何
midp
mobile
phone
,请重定向到
http://mwebsite.com.au

您可以猜到,
http://mwebsite.com.au
包含
website.com.au

要解决此问题,只需使用模式
^website.com.au
告诉您的情况,它应该从
website.com.au
开始

所以你的规则是:

<rewrite>
    <rules>
        <rule name="Mobile Rewrite" patternSyntax="ECMAScript" stopProcessing="true">
            <match url=".*" ignoreCase="true" negate="false" />
            <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
                <add input="{HTTP_HOST}" pattern="^website.com.au" />
                <add input="{HTTP_USER_AGENT}" pattern="midp|mobile|phone" />
            </conditions>
            <action type="Redirect" url="http://mwebsite.com.au" appendQueryString="false" redirectType="Permanent" />
        </rule>
    </rules>
</rewrite>


先生,您真是太棒了。这是一件如此简单的事情。非常感谢。非常欢迎您的光临!我看到你最近订阅了这个网站,所以如果你没有看到,它会解释为什么以及如何接受或不接受答案!:)啊,谢谢@cheesemacfly,我没有收到你评论的通知,只是现在读一下。我已经勾选了答案,谢谢!