以往在 GitHub 上如果要使用 HTTPS 只能使用 *.github.io
網域,現在 GitHub 宣佈透過 Let's Encrypt 的服務支援了:「Custom domains on GitHub Pages gain support for HTTPS」:
We have partnered with the certificate authority Let’s Encrypt on this project. As supporters of Let’s Encrypt’s mission to make the web more secure for everyone, we’ve officially become Silver-level sponsors of the initiative.
不過目前只支援 CNAME
record (標準) 或是 ALIAS
record 的方式 (非標準,也稱為 ANAME
,有些 DNS provider 有支援,主要用在網域本身 (i.e. root domain) 無法使用 CNAME
)。
如果是使用 A
record,則是需要更新 IP 位置:
If you are using
A
records, you must update your site’s DNS records with new IP addresses. Please see our guide to setting up your custom domain with Pages and update any A records you might have set.
另外也提供 HTTP 轉 HTTPS 的選項:
以前 HTTPS 還得自己弄伺服器處理,現在可以直接往 GitHub 上丟了...
另外用查出來的 IP 看了一下架構,IP 是 Fastly 的,所以應該是跟 Fastly 合作,但不確定是 Fastly 自己搞定 Let's Encrypt 的憑證,或是 Fastly 提供 Port 80/443 的 TCP Proxy?
其實 A record 是有支援的,只是要 (1) DNS A record 更新成新的一組 IP 以及 (2) 在 GitHub 移除並重新加回 custom domain 設定。
說明在 https://help.github.com/articles/setting-up-an-apex-domain/#configuring-a-records-with-your-dns-provider
fixed,謝 @_@