だから私は以下を使って書き直そうとしています:
<rules>
<rule name="HttpToHttps" stopProcessing="true"/>
<match url="(.*)"/>
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true"/>
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{URL}"/>
</rule>
<rules>
2つの環境では、これは本来のようにリダイレクトします。3番目の環境では、機能しません。フィドラーログを見ると、完全なURLのhttp呼び出しが表示されるという意味では機能しません。httpsにリダイレクトすると、HTTP_HOST以降のすべてが削除されます。
したがって、次のURLを使用します。
nonsecure://www.mysite.com/page.aspx?var1 = 1&var2 = 2
2つの環境では、
secure://www.mysite.com/page.aspx?var1 = 1&var2 = 2
3番目では次のようになります。
secure://www.mysite.com
https:// {HTTP_HOST} {HTTP_URL}として書き直してみたところ、最初の2つの環境で{URL}が2倍になりました。
secure://www.mysite.com/page.aspx?var1 = 1&var2 = 2&var1 = 1&var2 = 2
私はweb.configsの経験があまりなく、少し学習しているので、ここで何が起こっているのかについて誰かが何か意見を持っているなら、それは大いにありがたいです。何かに関係がある場合、3番目の環境は負荷分散された2台のサーバー上にあります。