URLにURLパラメータを追加するIIS URL書き換えルールを作成しようとしています。urlパラメータはhssc
です。したがって、サーバーを介して処理されるすべてのURL 、そのパラメータが必要です。一部のURLにはすでに独自のパラメータがあり、他のURLにはないこと、ルートURLなどは、?hssc=1
または&hssc=
を追加する必要がある場合があることに注意してください。 、そのようなURLがある場合:
また、URLが非表示にならないようにする必要があります(バックエンドのリライトのように)。 URLをURLに表示する必要があるため、ユーザーがURLをコピーしたりブックマークしたりすると、パラメーターがそこにあります。
それに一致するように条件を設定しました\&hssc|\?hssc
-URLを書き込む方法が必要なだけなので、URLが表示され、元のURLの一部が既に存在します。
これでうまくいくはずです:
<rule name="Add hssc param" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{QUERY_STRING}" pattern="hssc=1" negate="true" />
<add input="&{QUERY_STRING}" pattern="^(&.+)|^&$" />
</conditions>
<action type="Redirect" url="http://{HTTP_Host}/{R:0}?hssc=1{C:1}" appendQueryString="false" />
</rule>
これにより、クエリ文字列の残りの部分を保持しながら、常にhssc = 1がクエリ文字列の先頭に追加されます。それはあなたのすべての例で機能します。追加ではなく追加しましたが、同じ最終結果だと思います。