配置IIS7-IIS10 偽靜態(tài)web.config 實(shí)現(xiàn)http重定向跳轉(zhuǎn)HTTPS(包括不帶www跳轉(zhuǎn)到帶www)
[重要通告]如您遇疑難雜癥,本站支持知識(shí)付費(fèi)業(yè)務(wù),掃右邊二維碼加博主微信,可節(jié)省您寶貴時(shí)間哦!
為了友好的SEO保證域名統(tǒng)一性,將訪(fǎng)問(wèn) https://m.madamerex.com、http://06929.com、https://06929.com 的域名都跳轉(zhuǎn)到 http://m.madamerex.com,
我們用IIS的偽靜態(tài)web.config 可以進(jìn)行如下配置來(lái)實(shí)現(xiàn)我們說(shuō)到的功能
(需要安裝 IIS UrlRewrite 模塊,代碼注釋是為了方便理解,部署到線(xiàn)上請(qǐng)刪除中文注釋):
IIS UrlRewrite 模塊 下載鏈接 (請(qǐng)點(diǎn)擊下面百度網(wǎng)盤(pán)下載)
鏈接:https://pan.baidu.com/s/1RN6IoxtEGYqVdlnfjkmcuQ
提取碼:jq3q
以下是兩種方案,根據(jù)客觀自由選擇;
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="http redirect to https" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="^OFF$" />
<add input="{HTTPS_HOST}" pattern="^(localhost)" negate="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="HostNameRule1">
<match url="(.*)" />
<!--匹配所有條件-->
<conditions logicalGrouping="MatchAny">
<!--當(dāng)不是使用https協(xié)議訪(fǎng)問(wèn)的時(shí)候-->
<add input="{HTTPS}" pattern="^OFF$" />
<!--并且訪(fǎng)問(wèn)的host不是06929.com這種,例如m.madamerex.com-->
<add input="{HTTP_HOST}" pattern="^06929\.com$" negate="true" />
</conditions>
<!--跳轉(zhuǎn)到https-->
<action type="Redirect" url="https://06929.com/{R:1}" />
</rule>
<rule name="HTTPS redirect">
<match url="(.*)" />
<conditions>
<!--當(dāng)使用HTTPS協(xié)議訪(fǎng)問(wèn)-->
<add input="{HTTPS}" pattern="^ON$" />
<!--當(dāng)訪(fǎng)問(wèn) http://m.madamerex.com的時(shí)候 -->
<add input="{HTTP_HOST}" pattern="^06929\.com$" negate="true" />
</conditions>
<!--跳轉(zhuǎn)到HTTPS-->
<action type="Redirect" url="https://06929.com/{R:1}" redirectType="SeeOther" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
這里需要注意,想讓 https://06929.com 也可以跳轉(zhuǎn)到 http://m.madamerex.com,在申請(qǐng) HTTPS 證書(shū)的時(shí)候,要把 m.madamerex.com 這種域名也給申請(qǐng)上,
否則瀏覽器會(huì)解析不出 http://m.madamerex.com,因?yàn)樵谶M(jìn)行 HTTPS 加密握手的時(shí)候就會(huì)認(rèn)證失敗。
chrome 調(diào)試中發(fā)現(xiàn) HTTPS 改動(dòng)不生效
HTTPS 第一次連接域名的時(shí)候會(huì)和證書(shū)頒發(fā)機(jī)構(gòu)進(jìn)行 HTTPS 證書(shū)認(rèn)證,后續(xù)的連接會(huì)緩存起來(lái),清緩存就好了。
PS:
相關(guān)資料
- OpenSSL下載:http://gnuwin32.sourceforge.net/packages/openssl.htm
- SSL證書(shū)在線(xiàn)工具:https://csr.chinassl.net/
- 免費(fèi)證書(shū)在線(xiàn)申請(qǐng):https://freessl.org/
問(wèn)題未解決?付費(fèi)解決問(wèn)題加Q或微信 2589053300 (即Q號(hào)又微信號(hào))右上方掃一掃可加博主微信
所寫(xiě)所說(shuō),是心之所感,思之所悟,行之所得;文當(dāng)無(wú)敷衍,落筆求簡(jiǎn)潔。 以所舍,求所獲;有所依,方所成!