0
我發現了兩個不同的重寫規則來爲IIS託管的網站強制使用HTTPS。我有一個網站將託管在Azure應用服務上,該服務將使用此規則。IIS重寫規則
選項1:
<rewrite>
<rules>
<rule name="Force HTTPS" enabled="true">
<match url="(.*)" ignoreCase="false" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
選項2:
<rewrite>
<rules>
<rule name="Redirect to https">
<match url="(.*)"/>
<conditions>
<add input="{HTTPS}" pattern="Off"/>
<add input="{REQUEST_METHOD}" pattern="^get$|^head$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent"/>
</rule>
</rules>
</rewrite>
問題:
- 時哪些IGNORECASE的原因設置爲false選項1?
- REQUEST_METHOD輸入是否將選項2中的安全性限制爲GET和HEAD?
- appendQueryString =「true」是否使查詢字符串保持重定向?
- 是否有任何其他選項可以考慮不屬於這兩者之一?
感謝您的鏈接。對REQUEST_METHOD條件的作用有什麼想法?它似乎限制了重定向到GET和HEAD請求。 – Josh
是Http_Method的限制(只有在http_method爲get頭時重定向),我認爲第一個選項更好。 – aloji