2017-08-06 15 views
0

この質問は以前に尋ねられました。私は自分で質問する前に提案の質問を閲覧しました。残念ながら、私は必要とする答えに遭遇していません。Web.configサブドメイン以外のHTTPからHTTPSへのリダイレクト

TLDドメインをHTTPからHTTPSにリダイレクトするためのWeb.Configファイルを書き直しました。私が持っている問題は、サブドメインサイトも同様にリダイレクトすることです。私は、TLDがリダイレクトするだけで、サブドメインのサイトは必要としません。例えば

Iはwww.example1.co.zaとwww.example2.com

を有するIはhttps://www.example2.comにリダイレクトするhttp://www.example2.comを必要はなく、http://a.example2.com又はwww.example2.com

のいずれかのサブドメイン

<rules> 
    <clear /> 
    <rule name="Redirect to SSL for Mass" stopProcessing="true"> 
     <match url="(.*)" ignoreCase="true"/> 
     <conditions logicalGrouping="MatchAll"> 
      <add input="{HTTP_HOST}" pattern="example1\.co\.za$" /> 
      <add input="{HTTPS}" pattern="^OFF$" /> 
     </conditions> 
     <action type="Redirect" url="https://example1.co.za" /> 
    </rule> 
    <rule name="Redirect to SSL for Pro" stopProcessing="true"> 
     <match url="(.*)" ignoreCase="true"/> 
     <conditions logicalGrouping="MatchAll"> 
      <add input="{HTTP_HOST}" pattern="example2\.com$" /> 
      <add input="{HTTPS}" pattern="^OFF$" /> 
     </conditions>       
     <action type="Redirect" url="https://example2.com" /> 
    </rule> 
</rules> 

それはまた私のコンフィグコードである。ここhttps://example1.co.za

にリダイレクトするhttp://example1.co.zaためにリダイレクトルールを守る必要があります

EDIT

サブドメインを除外する別のルールを追加しようとしました。しかし、私はエラーアン得る:(

<rule name="Exclude Sub Sites from Pro HTTPS Rule" stopProcessing="true"> 
        <match url="(.*)" ignoreCase="true"/> 
        <conditions logicalGrouping="MatchAll"> 
         <add input="{HTTP_HOST}" pattern="^*\.example2\.com$" negate="true" /> 
         <add input="{HTTPS}" pattern="^OFF$" /> 
        </conditions> 
       </rule> 

答えて

2

このルールは、リダイレクトします:

http://www.example.comhttps://www.example.comにリダイレクトするために、

http://example.comこの正規表現^(www\.)?example\.com$がフィルタリングされhttps://example.com

<rule name="Check SSL" stopProcessing="true"> 
    <match url="(.*)" /> 
    <conditions logicalGrouping="MatchAll"> 
     <add input="{HTTP_HOST}" pattern="^(www\.)?example\.com$" /> 
     <add input="{HTTPS}" pattern="^OFF$" /> 
    </conditions>       
    <action type="Redirect" url="https://{HTTP_HOST}/{R:0}" /> 
</rule> 

にリダイレクトしますリクエストは、ホストがexample.comと異なるか、 www.example.com

+0

これはサブドメインを除外しますか? sub.example.comにリダイレクトされませんか?私がライブサイトでこれをテストする前に確認する必要があります。 – Orion

+0

はい、example.comまたはwww.example.com以外のすべてのドメインが除外されます –

+0

2つのトップレベルドメインに対して2つのルールがあります。他のドメインも除外しますか?編集された質問をご覧ください。 – Orion

関連する問題