2017-08-24 136 views
0

我需要做下面的重定向和我不能得到最後一個:iis的8 URL重寫HTTPS和www

都必須去:

  • HTTPS; // www.example.com

(注:分號實際上是冒號)

前兩個是符合條件的照顧「{} HTTPS匹配關」,但我嘗試使用{HTTP_HOST}或{URL}來處理最後一個問題,而且沒有任何事情發生。

什麼樣的條件適合我?

回答

0

您需要創建兩個條件:

<conditions> 
    <add input="{HTTPS}" pattern="on" /> 
    <add input="{HTTP_HOST}" pattern="^example.com$" /> 
</conditions> 

在IIS管理器,它看起來就像是:

enter image description here

UPDATE

基於我們在評論中討論:

<rule name="All in one URL" stopProcessing="true"> 
    <match url=".*" /> 
    <conditions logicalGrouping="MatchAny"> 
     <add input="{HTTPS}" pattern="off" /> 
     <add input="{HTTP_HOST}" pattern="^www\." negate="true" /> 
    </conditions> 
    <action type="Redirect" url="https://www.example.com:35077{URL}" /> 
</rule> 
+0

除非這是一個單獨的規則,否則我看不出它會如何工作。我試圖將非https請求推送到https。因此,我工作的規則是{HTTPS} =關重定向到https; // www.example.com,它的工作原理。 我在那裏添加了Match Any來捕獲https; // example.com。 你是否建議一個單獨的規則? – CDenby

+0

當我在單獨的規則中嘗試此操作時,它沒有正確捕獲該案例。 – CDenby

+0

那麼,你想要一個單一的規則,它會重定向'http:// www.example.com','http:// example.com','https:// example.com'到'https:// www .example.com'? –