带“的移动设备的IIS URL重写规则”;“nomobile”;曲奇

带“的移动设备的IIS URL重写规则”;“nomobile”;曲奇,iis,url-rewriting,Iis,Url Rewriting,我们正在使用IIS URL重写模块通过检查HTTP_USER_AGENT将所有请求从移动浏览器重定向到m.mymobilesite.com。这很好,现在我们需要实现一个“查看完整站点”链接,允许用户查看主站点。试图通过在用户单击“查看完整站点”链接时添加“nomobile”cookie来实现这一点,该链接将被规则验证和否定。由于某种原因,我的规则似乎不起作用 请帮忙 <rewrite> <rules> <rule name="MobileRedirect"

我们正在使用IIS URL重写模块通过检查HTTP_USER_AGENT将所有请求从移动浏览器重定向到m.mymobilesite.com。这很好,现在我们需要实现一个“查看完整站点”链接,允许用户查看主站点。试图通过在用户单击“查看完整站点”链接时添加“nomobile”cookie来实现这一点,该链接将被规则验证和否定。由于某种原因,我的规则似乎不起作用

请帮忙

<rewrite>
<rules>
    <rule name="MobileRedirect" patternSyntax="ECMAScript" stopProcessing="true">    
        <match url=".*" ignoreCase="true" />
        <conditions logicalGrouping="MatchAll">
            <add input="{HTTP_COOKIE}" pattern="nomobile" ignoreCase="true" negate="true" />
            <add input="{HTTP_USER_AGENT}" pattern="android|blackberry|googlebot-mobile|iemobile|iphone|ipod|opera mobile|palmos|webos" />
        </conditions>    
        <action type="Redirect" url="http://m.mymobilesite.com" appendQueryString="false" redirectType="Found" />
    </rule>
</rules> </rewrite>

这条规则非常完美,我在IIS级别对失败的请求进行跟踪后发现了问题,如前所述

我在用户选择“查看完整站点”链接时创建的cookie不是使用域名创建的。我在cookie创建脚本中添加了domain=“mymainsite.com”,现在它工作正常