Hexo静态博客指南:本站是如何诞生的(下)

本文详细记录一下本站的建立过程,以便查阅。对于具体的细节则不会做过多解释,主要展示步骤。这一篇主要讲述购买及绑定域名的相关操作。

购买域名

现在我们的站点已经有模有样了,那就可以准备为它绑定一个域名了。首先第一步就是购买域名。国内国外都有众多域名服务商,本着少受一些限制的原则,推荐从国外几个知名的服务商购买。在网上可以搜到许多域名商的介绍与购买指南,这里就不赘述了。

如果实在选择困难,可以去这里比较一下各家的价格。很多域名商首年或者首次转移都有优惠,如果不想每年都折腾,一定要记得对比一下续费价格,以及有没有隐藏费用。另外最好选择有WHOIS隐私保护的域名商,以及在付费的时候不要错选成那些乱七八糟的套餐,只买域名即可。

绑定域名并添加CNAME

这一步主要参考了两篇文章,分别讲了使用[1]和不使用[2]DNSPod的情况,你可以视情况而定。我这里参考的是第二篇,也就是GitHub官方的指南。

首先去你的GitHub用户名.github.io仓库中,点击Settings,在GitHub Pages的Custom domain下输入你买好的域名,点击Save保存。

此时你会发现下面的Enforce HTTPS被取消勾选,为了将其再次选中,需要以下的步骤。

首先配置CNAME,在source文件夹下建立一个新文件叫做CNAME(不要带任何后缀),将你买好的域名输入进去。随后向GitHub提交这次修改。

随后,打开你的域名商网站,为你的域名配置DNS。不同的域名商可能有不太一样的步骤,你可以搜索你的域名商 + connect to github pages来找到教程。在一般情况下,你需要设置4个A记录与1个CNAME记录,A记录指向下面四个IP地址:

  • 185.199.108.153
  • 185.199.109.153
  • 185.199.110.153
  • 185.199.111.153

CNAME记录则设置为www CNAME 你的GitHub用户名.github.io。详情可以参看教程里的设置apex域部分。

随后刷新GitHub的设置页,看是否可以点选Enforce HTTPS。有时候需要等一段时间才可以。你也可以在Terminal测试一下DNS是否配置正确(可能也需要等一段时间才会生效):

1
2
3
4
5
6
7
8
$ dig bambrow.com +noall +answer

; <<>> DiG 9.10.6 <<>> bambrow.com +noall +answer
;; global options: +cmd
bambrow.com. 194 IN A 185.199.109.153
bambrow.com. 194 IN A 185.199.111.153
bambrow.com. 194 IN A 185.199.110.153
bambrow.com. 194 IN A 185.199.108.153

也可以在dig命令的域名前加上www看一下CNAME记录是否生效:

1
2
3
4
5
6
7
8
9
$ dig www.bambrow.com +noall +answer

; <<>> DiG 9.10.6 <<>> www.bambrow.com +noall +answer
;; global options: +cmd
www.bambrow.com. 299 IN CNAME bambrow.github.io.
bambrow.github.io. 3599 IN A 185.199.109.153
bambrow.github.io. 3599 IN A 185.199.108.153
bambrow.github.io. 3599 IN A 185.199.111.153
bambrow.github.io. 3599 IN A 185.199.110.153

其他设置

_config.ymlurl修改为你的新域名。如果你配置了LeanCloud,在应用中点击设置,点击安全中心,在Web安全域名把你的新域名加进去。现在基本上就大功告成了!


  1. https://tding.top/archives/b48e2719.html ↩︎

  2. https://docs.github.com/cn/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site ↩︎