一直都是通过GoDaddy.com购买域名,同时github提供了非常方便免费的空间。github page建好了,个人域名也购买了。怎样让github page转到个人域名呢?以下我会说明怎样让GoDaddy.com购买的域名hebaoying.com自动转到github页面hebaoying.github.io
operation步骤如下:
- 建立Github Page,在GoDaddy购买域名
- 在repo底下添加名称为CNAME的文件,内容只有一行:
hebaoying.com
- 在GoDaddy网站管理域名,管理DNS
- 删除所有类型为A的记录,添加类型为”A (Host)” ,”主机” 为
@
, “指向” =192.30.252.153
和”指向” =192.30.252.154
的记录 - 添加类型为”CNAME” ,”主机” 为
www
, “指向” =hebaoying.github.io
的记录 - 等待DNS生效,转址生效,最长48小时
以下为详细步骤说明。
1.建立github的个人网站yourname.github.io
猜你早已经做好这步了,网站建好。网址还是yourname.github.io,并不会自动转向任何地方(这不是废话么)。然后在GoDaddy.com上购买域名。
2.在repo底下添加名称为CNAME的文件
在repo底下添加名称为CNAME的文件,不带任何后缀,内容只有一行:hebaoying.com
后来发现这个方法是有问题的。当你在本地修改或者上传文章时,即hexo deploy
后,发现域名无法转到Github Page了,进入github repo看到CNAME
文件被删掉了。以下才是正确解答:在source
文件夹新建CNAME
文件。
官方的教程说在根目录新建CNAME
文件,这是不对的,因为只有source
文件夹的资料被部署到github上,而根目录的内容会被重新写入,即CNAME
仍被删掉。
有两个方法。
- 1) atom
1
atom. cd ~/Public/hebaoying.github.io
打开本地文件夹,在/source文件夹下新建文件(右击点击source文件夹,点击new file即可),文件命名为CNAME,内容只有一行:
hebaoying.com
最后hero deploy部署到github上就可以了。
- )terminal
1
2
3
4
5
6
7
8cd ~/Public/hebaoying.github.io/souce/
echo hebaoying.com > CNAME
git add CNAME
git commit -m “CNAME file or domain"
cd ~/Public/hebaoying.github.io/
hexo generate
hexo clean
hexo deploy
3.在GoDaddy网站管理域名,点击管理DNS
很简单,选中你要管理的域名,点击进入“管理DNS”。
4.删除和添加DNS记录
删除所有类型为A的记录。
添加两条记录。
1) 类型为”A (Host)” ,”主机” 为
@
, “指向” =192.30.252.153
2) 类型为”A (Host)” ,”主机” 为
@
, “指向” =192.30.252.154
参考github官方帮助文章。
5.等待DNS生效,最长48小时
等DNS更新后,输入购买的域名hebaoying.com,看到已经自动转向到hebaoying.github.io,但是显示的网址还是hebaoying.com
OK,完美完成。
你可以在terminal输入以下指令,和我的结果对比一下。1
2
3
4
5
6
7cd ~/Public/hebaoying.github.io/souce/$ dig hebaoying.com +nostats +nocomments +nocmd
- ; <<>> DiG 9.8.3-P1 <<>> hebaoying.com +nostats +nocomments +nocmd
;; global options: +cmd
;hebaoying.com. IN A
hebaoying.com. 3600 IN A 192.30.252.154
hebaoying.com. 3600 IN A 192.30.252.153