如何使用github现成的模板搭建博客

来源:互联网 发布:淘宝杂货铺知乎 编辑:程序博客网 时间:2024/05/12 09:54

博客基于jekyll,而新手往往摸不着头脑,幸好有一些现成的模板可以直接使用,White Paper这个模板为例,可以直接下载压缩包,也可以使用如下命令clone到本地:

$ git clone https://github.com/vinitkumar/white-paper.git
把克隆下来的文件拷贝到你自己的目录就行了,这样你就有一个现成的网站结构了:


通过在域名提供商那边,将你的域名指向204.232.175.78,再在分支里面新建一个CNAME文件,里面写上你的域名就可以实现自定义域名了。如今github有了新的玩法

  1. A记录:域名直接映射IP,但是这个IP换成了192.30.252.153192.30.252.154
  2. 如果域名提供商支持ALIASANAME,将域名指向username.github.io,这样可以在域名解析的时候得到一个动态的IP,这个IP是一台离你最近的镜像主机
  3. CNMAE:如果你希望使用二级域名访问,将一个二级域名配置成CNAME,指向username.github.io,这样可以在域名解析的时候得到一个动态的IP,这个IP是一台离你最近的镜像主机

其中2、3两种方式能够享受CDN加速,因为域名不是直接与IP地址映射的,github就有机会帮用户选择最近的镜像主机提供服务。但是笔者先前是直接将在A记录里面将主域pchou.infowww.pchou.info指向了204.232.175.78。这也是为什么github会给我警告的原因。但是改进有些令人发愁,因为希望保留别人对我的外链啊,那么如何改进呢?

首先删除www.pchou.info的A记录,添加CNAME记录

www.pchou.info -> pchou.github.io

使用dig查看域名解析情况

www.pchou.info.         1799    IN      CNAME   pchou.github.io.pchou.github.io.        3600    IN      CNAME   github.map.fastly.net.github.map.fastly.net.  280     IN      A       103.245.222.133

可以看到,CDN最终为我选择了IP地址为103.245.222.133的镜像主机

修改或添加项目中的CNAME文件,变成如下:

www.pchou.info

等待十几分钟即可。

当访问pchou.info的时候会自动重定向到www.pchou.info,于是访问一台IP为103.245.222.133的镜像主机 当访问www.pchou.info会访问一台IP为103.245.222.133的镜像主机

github在这里自动将www的子域与主域关联了起来,并有如下行为:

如果仓库的CNAME文件包含example.com,那么访问www.example.com会重定向到example.com 如果仓库的CNAME文件包含www.example.com,那么访问example.com会重定向到www.example.com

经过测试,使用CDN后,速度可以提高一倍:

ping最早的IP

PING 204.232.175.78 (204.232.175.78) 56(84) bytes of data.64 bytes from 204.232.175.78: icmp_seq=1 ttl=48 time=280 ms64 bytes from 204.232.175.78: icmp_seq=3 ttl=46 time=243 ms64 bytes from 204.232.175.78: icmp_seq=4 ttl=48 time=273 ms64 bytes from 204.232.175.78: icmp_seq=5 ttl=46 time=239 ms64 bytes from 204.232.175.78: icmp_seq=6 ttl=46 time=239 ms64 bytes from 204.232.175.78: icmp_seq=7 ttl=46 time=236 ms64 bytes from 204.232.175.78: icmp_seq=8 ttl=46 time=238 ms

ping后来的IP

PING 192.30.252.153 (192.30.252.153) 56(84) bytes of data.64 bytes from 192.30.252.153: icmp_seq=1 ttl=47 time=358 ms64 bytes from 192.30.252.153: icmp_seq=2 ttl=47 time=345 ms64 bytes from 192.30.252.153: icmp_seq=5 ttl=47 time=359 ms64 bytes from 192.30.252.153: icmp_seq=6 ttl=47 time=351 ms64 bytes from 192.30.252.153: icmp_seq=7 ttl=47 time=370 ms

ping动态的IP

PING 103.245.222.133 (103.245.222.133) 56(84) bytes of data.64 bytes from 103.245.222.133: icmp_seq=1 ttl=53 time=84.5 ms64 bytes from 103.245.222.133: icmp_seq=2 ttl=54 time=118 ms64 bytes from 103.245.222.133: icmp_seq=3 ttl=53 time=104 ms64 bytes from 103.245.222.133: icmp_seq=4 ttl=54 time=118 ms64 bytes from 103.245.222.133: icmp_seq=5 ttl=53 time=104 ms64 bytes from 103.245.222.133: icmp_seq=6 ttl=53 time=82.5 ms

0 0
原创粉丝点击