wwwを呼び出すすべてのwwwコールをhttpsにリダイレクトするようにIISを設定しようとしています 最初の部分は非常に簡単ですが、バインディングでhttpsを有効にしているときに動作します。IIS7.5以外のwwwをwwwにリダイレクトする
だから私はにリダイレクトされ、すべての両方 http://domain.com/ と https://domain.com/ と http://www.domain.com/ をしたいと思います。何か提案が
?
wwwを呼び出すすべてのwwwコールをhttpsにリダイレクトするようにIISを設定しようとしています 最初の部分は非常に簡単ですが、バインディングでhttpsを有効にしているときに動作します。IIS7.5以外のwwwをwwwにリダイレクトする
だから私はにリダイレクトされ、すべての両方 http://domain.com/ と https://domain.com/ と http://www.domain.com/ をしたいと思います。何か提案が
?
This ended up working for me:
<rewrite>
<rules>
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
</rule>
</rules>
</rewrite>
<rewrite>
<rules>
<rule name="Non www HTTP to HTTPS" patternSyntax="ECMAScript" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" />
<add input="{HTTP_HOST}" pattern="^www" negate="true" />
</conditions>
<action type="Redirect" url="https://www.{HTTP_HOST}{REQUEST_URI}" />
</rule>
<rule name="Non www HTTPS to www HTTPS" patternSyntax="ECMAScript" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="On" />
<add input="{HTTP_HOST}" pattern="^www" negate="true" />
</conditions>
<action type="Redirect" url="https://www.{HTTP_HOST}{REQUEST_URI}" />
</rule>
<rule name="HTTP to HTTPS" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" />
<add input="{HTTP_HOST}" pattern="www*" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" />
</rule>
</rules>
</rewrite>
@Josh:あなたの答えは、最初のリクエストで機能します。 それは "https://www"で完璧です。 しかし、私は "www。アドレスから、以下のイメージのように失敗します。
私はまだ問題を抱えています。 ここに行く場合: https://www.skaljakke.dk/skaljakker-damer それはすべてうまく見えますが、あなたが "www。それは失敗するでしょう。何か提案はありますか? –
@ user3305839 wwwの両方をカバーするSSL証明書がありますか。 domain.comだけ? Webサーバーは最初にハンドシェイクを行い、次にリダイレクトを行うことができなければなりません。両方をカバーする証明書がない場合、ブラウザはセキュリティ例外を検出します。 – Josh