创建 CNAME 文件#
首先,在库的 gh-pages 分支根目录下创建 CNAME 文件,写入:
www.111cn.net
注意以下几点:
CNAME 文件名大写
域名前不需要添加 http 这样的协议
这里使用 www 子域名而不是顶级的 111cn.net ,Github 推荐使用子域名
如果域名 ‘111cn.net ’ 同样指向这个库的话,Github Pages 会自动将其重定向到 ‘www.111cn.net ’ 上
添加 CNAME 记录#
DNS 中添加一条 CNAME 记录,将 www 指向 chenxsan.github.io。
之后检查 DNS 设置的情况:
$ dig www.111cn.net +nostats +nocomments +nocmd
; <<>> DiG 9.9.5-rpz2+rl.14038.05-P1 <<>> www.111cn.net +nostats +nocomments +nocmd
;; global options: +cmd
;www.111cn.net . IN A
www.111cn.net . 3599 IN CNAME chenxsan.github.io.
chenxsan.github.io. 3599 IN CNAME github.map.fastly.net.
github.map.fastly.net. 14 IN A 103.245.222.133
一切正常。
添加 A 记录#
上面的 CNAME 记录只是将 www.111cn.net 指向 Github 服务器,此时访问 111cn.net 域名,会返回 404 错误,所以还需要在 DNS 中添加两条 A 记录指向 Github Pages 的两个 IP(更好的办法是添加 ALIAS,但 Google Domains 并不支持):
192.30.252.153
192.30.252.154
再使用 dig 命令检查 DNS 状况:
$ dig 111cn.net
; <<>> DiG 9.9.5-rpz2+rl.14038.05-P1 <<>> 111cn.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56008
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;111cn.net . IN A
;; ANSWER SECTION:
111cn.net . 3599 IN A 192.30.252.153
111cn.net . 3599 IN A 192.30.252.154
;; Query time: 588 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Fri Nov 14 22:27:00 CST 2014
;; MSG SIZE rcvd: 73
这时再访问 111cn.net 域名,已经能正常打开,并且因为第一步中的设置,Github 会帮我们重定向到 www 上。