看本文章的前提是你使用過github的pages服務,如果沒有,請參考 GitHub Pages和自定義github pages 域名為自己的域名,然後再來檢視本文。如果一切就緒,那請接著往下看。
準備工作
- 阿里雲域名一個&VIP域名解析功能
- 清楚https的原理並瞭解letsencrypt,如果不清楚請自行補充知識。參考
HTTPS詳解&letsencrypt官網
正題
當我們具備以上條件後我們開始正題。
- 檢查github pages 自定義域名設定正確。例如我的github pages的域名為 justmd5.github.io ,首先這個是能正常訪問的。
- 其次如果以上沒問題,那檢查https://github.com/yourname/yourname.github.io/settings的設定是否正確![設定](https://help.github.com/assets/images/help/repository/repo-actions-settings.png)
確保設定成功自定義域名 - 現在我們來操作阿里雲,操作之前我們使用一條命令,檢視下當前justmd5.github.io的解析情況。如圖所示:
,此處的結果請記錄下來,後邊會用到。 - 登陸阿里雲的域名解析,刪除之前自定義域名的cname(如果之前你自定義過域名,應該懂我說的是什麼)。
- 設定 A記錄,加入剛才dig查詢的結果,記住:有幾條,設定幾條A記錄,如:我的自定義域名設定的是:justmd5.com,dig查justmd5.github.io 出來的是四條解析記錄,那就新增四條A記錄指向dig對應的四個IP地址。
- 接下來的事情就是重點了,使用VIP版(只有VIP版才支援,萬惡的資本主義?)的域名解析,設定一條CAA解析,內容為:
0 issue “letsencrypt.org”
* 設定成功CAA後的解析情況如圖:
到此,阿里雲的工作就完成了。這時候你去使用https協議訪問你的自定義域名,你猜會怎麼樣?作為技術人猜什麼猜,訪問下嘛!不好,瀏覽器攔截,告訴你證照不對。這時候想知道為什麼嘛?我反正是在這裡被坑了的。?給你幾個提示Troubleshooting custom domains看完再朝下看解決方案。
- 如果你看到我給你的提示網址,裡邊有一段描述,設定自定義域名https的CAA解析後,記得刪除一次自定義域名設定,確保自定義域名欄為空,儲存。然後再設定一次自定義域名。這樣操作的目的是觸發github伺服器的自定義域名查詢和https證照籤名生成。
- 做完上邊一步,你發現設定中https那個勾還是灰色的,是不是有點沮喪?♂ 。先別沮喪,灰色選擇框的文字,你仔細看了麼。對了,就是等待域名證照的生成,當生成完成後,你會發現灰色選擇框變為可選了(這個過程有點長,官方說24h,通常過一夜應該就好了。)看一下最終成功吧~!
現在去使用https訪問下你的部落格,是不是瞬間感覺高大上(裝B)了?!
附其他github pages對應自定義域名對應關係
放個公眾號【公眾號名稱:八阿哥】二維碼,求掃:
本作品採用《CC 協議》,轉載必須註明作者和本文連結