現在、モバイル Web サイト バージョンの URL を次のようなルールで書き換えています。
<rule name="MOBILE example rule" stopProcessing="true" patternSyntax="ECMAScript">
<match url="^([^/]+)/([^/\.]+)/([^/]+)/([^/]+)/?$" />
<conditions logicalGrouping="MatchAny" trackAllCaptures="false">
<add input="{HTTP_USER_AGENT}" pattern="mobile|phone" />
<add input="{HTTP_X-Device-User-Agent}" pattern="mobile|phone" />
<add input="{HTTP_X-OperaMini-Phone-UA}" pattern="mobile|phone" />
</conditions>
<action type="Rewrite" url="/mobile/index.php?lang={R:1}&cat={R:2}&brn={R:3}&mdl={R:4}" />
</rule>
次に、ユーザーが Web サイトの「クラシック」デスクトップ バージョンにアクセスしたい場合に備えて、「forceNotMobile」Cookie を「true」に設定します。
問題は...この動作を行うためにどのような条件を追加できるかです:
Cookie が設定されている場合、ルールが機能し、URL が書き換えられます。
それ以外の場合、Cookie が設定されていないか、false に等しい場合は、何も書き換えずにルールの処理を停止します。
私はそのようなものを探していると思います:
<add input="{HTTP_COOKIE}" pattern="forceNotMobile=true" negate="true" />
しかし、「MatchAny」論理グループは「MatchAll」である必要があり、それは私の一連の「ua-is-mobile」ルールに準拠していません。
<conditions />
ブロックを2つ追加できますか?
PS。UAがモバイルであるかどうかを確認する方法はありますか? どうすれば改善できますか?スマートフォンをモバイル版に「書き換え」たいだけです。