1. 前言
看本文前请确认已部署好基础的静态网页,参考上篇文章 [[Github Page 个人主页——项目部署]]。
部署好的个人网页若使用 username.github.io
访问,会让别人很难记住,这时就可以使用自定义域名来绑定仓库了。
本文将介绍如何使用自己的域名来访问部署好的网页。
1.1 涉及到的知识
若后文有看不懂的部分,可以查找相关知识点
- 域名
- 域名系统DNS
- DNS相关配置
- 域名备案
- HTTP协议 和 HTTPS协议
1.2 什么是顶级域名?
域名可以说是一个IP地址的代称,目的是为了便于记忆。例如:baidu.com 就是一个顶级域名,www.baidu.com 就是一个二级域名。
1.3 我的域名需要备案吗?
购买域名用于国内服务器的网站(或小程序)架设是一定要备案的(香港不用),若不是用网站这些,例如用于邮箱就不用备案。而域名用于国外服务器是不用的。
本文介绍的是使用Github来部署的网页,它的服务器在国外所以不用备案。
1.4 原理
访问域名->DNS服务器->Github服务器->返回请求资源
2. 购买域名
购买域名有很多网站,例如国内腾讯云、阿里云等,国外有 Godady、Namesilo等,我这里使用国外的 Namesilo,比较便宜。
- 先到购买域名的网站查一下想要的域名有没有被别人注册了。
- 注意有些域名首年很便宜,之后就很贵。
- 国外买的话可以使用支付宝付款。
3. DNS配置
3.1 DNS解析系统选择
这里不推荐使用 Namesilo 的DNS系统,自带的DNS解析生效很慢,TTL最低3600秒,使用起来不顺手。我使用的是腾讯云的 DNSPod 基础免费服务,TTL才600s。当然也可以使用其他的DNS解析系统。
3.2 DNSPod 配置
- 使用微信登录 腾讯云
- 进入 DNS 解析 DNSPod 添加域名
- 在域名解析里添加一条 CNAME 记录(推荐),或者4条 A 记录
CNAME 记录是指将一个域名解析到另一个域名
*A * 记录是指将一个域名解析到一个IP地址
主机记录 | 记录类型 | 线路类型 | 纪录值 | TTL |
---|---|---|---|---|
www | CNAME | 默认 | z446c.github.io(换成你的) | 600 |
或者
主机记录 | 记录类型 | 线路类型 | 纪录值 | TTL |
---|---|---|---|---|
www | A | 默认 | 185.199.108.153 | 600 |
www | A | 默认 | 185.199.109.153 | 600 |
www | A | 默认 | 185.199.110.153 | 600 |
www | A | 默认 | 185.199.111.153 | 600 |
- 配置后等待解析生效,十几分钟…
4. Github绑定域名
- 在Settinsg->Pages->在 Custmom domain 填入域名->Save->取消 Enforce HTTPS
www. abc.abc是瞎取的
- 配置好等待一段时间,就可以用http协议通过自己的域名访问到 Github Page 了。
5. 结尾
5.1 关于 HTTPS 证书
- 在 2018 年 5 月 1 日之后,GitHub Pages 已经开始提供免费为自定义域名开启 HTTPS 的功能,并且大大简化了操作的流程,现在用户已经不再需要自己提供证书,只需要将自己的域名使用 CNAME 的方式指向自己的 GitHub Pages 域名即可。
- 在 Github 绑定域名时,我们取消了 Enforce HTTPS 的选项,这是为下篇文章CDN加速做准备,若您不使用CDN,到此就结束,那么可以勾选 Enforce HTTPS ,就可以使用Https协议访问网页了,可以自行测试。
5.2 姊妹篇文章
Github Page 个人主页——项目部署
Github Page 个人主页——CDN加速
Github Page 个人主页——Hexo博客