当前位置 : 首页 » 文章分类 :  开发  »  Hexo博客(01)GitHub Pages创建博客并绑定域名

Hexo博客(01)GitHub Pages创建博客并绑定域名

什么是 Github Pages?

Github Pages 是 Github 的静态页面托管服务。它设计的初衷是为了用户能够直接通过 Github 仓库来托管用户个人、组织或是项目的专属页面。
Github Pages 的限制:

  • 仓库存储的所有文件不能超过1GB;
  • 页面的带宽限制是低于每月100GB或是每月100,000次请求;
  • 每小时最多只能部署10个静态网站;

1 建立username.github.io项目

GitHub Pages分两种,一种是username.github.io这样的用户或组织站(user or organization site),目的是用户或组织的介绍;另一种是依附于项目的站(Project site),目的是该项目的介绍页。

用户或组织站一个用户名下只能建立一个,新建一个名称为username.github.io的repository,注意username必须和账号的用户名完全相同。建立好后在master下提交一个index.html,即可使用域名username.github.io访问。

项目站目的是为了用户介绍自己的某个项目,在每个项目中都会有一个gh-pages分支,在gh-pages分支中提交页面,即可使用username.github.io/projectname域名访问。

个人博客用哪种pages都行,最后用独立域名指向它,没什么区别。我们这里使用的是username.github.io用户名站。

2 配置CNAME文件

如果不想使用username.github.io作为博客域名,可以给博客绑定一个独立域名,需要在项目根目录下配置一个CNAME文件。在username.github.io项目的根目录下新建一个名为CNAME的文件,注意文件名必须大写,文件内容形如:masikkk.com,注意只要裸域名,不需要https://。并且,CNAME文件中只能有一个域名,不能同时绑定多个域名。


CNAME文件

3 配置DNS解析到github服务器

可以选择A记录或CNAME记录,A记录指向具体IP,CNAME记录指向另一个域名,使用CNAME解析可享受Github pages的CDN加速。

你先想一个问题:那么多人都要在github上搞博客,还要自定义域名。github哪来这么多ip给你们用?所以办法就是仅仅提供一个ip,这样必然导致这个服务器上发着所有人的博客文件,那么如何区分特定的域名应该展示谁的博客呢?答案就是在仓库里面新建一个CNAME文件,里面写上你博客想用的域名,github的服务器会根据当前http请求的Host头部(即域名),查找对应的包含相同的CNAME内容的目录,从而显示其中的页面。这就是为什么要在仓库里面创建一个CNAME原因。
不过,事情还没完,一个ip的问题是世界各地不同地点的访问速度不同,有些地方可能很慢,所以需要一组ip来分担一下。最早github好像只有2个ip,后来ip变多了。再后来,github支持域名解析的时候,通过alias来。比如在域名商那边设置成www.tengj.com —> tengj.github.io,由于github无法控制你如何配置域名和ip的关系,但他可以控制tengj.github.io的最终ip解析,所以github推荐大家使用alias解析,可以为博主提供就近ip访问。这就是你在域名商那边配置CNAME或者alias的原理。这里的CNAME跟上面提到的CNAME作用不同,不是一个概念,不要混淆。

  • 配置A记录
    在自己域名提供商的DNS解析中增加一条A记录配置,地址为192.30.252.153192.30.252.154,由于pages使用了CDN,我们可以用dig username.github.io命令来查看自己账号的具体IP并配置。github pages IP可能改变,在https://help.github.com/articles/troubleshooting-custom-domains/ 中查看变化。
  • 配置CNAME记录
    添加CNAME记录,指向username.github.io,能够享受GitHub pages的CDN加速。

    我的域名解析配置

4 创建index.html进行测试

创建一个简单的index.html文件,上传到username.github.io项目master目录,访问自己的域名即可看到。


参考


上一篇 Hexo博客(02)安装Hexo生成博客并部署到GitHub

下一篇 Linux-系统目录

阅读
评论
1.1k
阅读预计4分钟
创建日期 2016-03-18
修改日期 2017-06-21
类别

页面信息

location:
protocol:
host:
hostname:
origin:
pathname:
href:
document:
referrer:
navigator:
platform:
userAgent:

评论