Preface

之前的博客是直接放在个人的GitHub上的,公开域名blogs.stephen-zhang.cn指向stark-zhang.github.io。但是由于GitHub在国内的访问偶尔会抽风,因此考虑添加CDN作为备用解决方案。

为什么是CloudFlare

有免费套餐,对小站而言比较划算。之前考虑过CloudFlare Pages,不过还是感觉Github Pages较为方便,于是放弃迁移。

操作方法

  1. Cloud Flare注册账户,并添加自己的站点,输入自己的一级域名,如stephen-zhang.cn并为其选择免费计划;
  2. Cloud Flare会自动扫描当前域名下的所有DNS解析记录并导入;
  3. 回到域名注册商那里,把该域名所属的DNS服务器修改为Cloud Flare提供的nameserver;
  4. 等待24-48小时,等待新的nameserver生效即可。

事实上,完成第三步后,可以通过手动刷新DNS缓存,来测试CDN是否生效。可以通过ping命令获得域名当前指向的IP地址,在任意IP地址查询网站看到该地址时从属于Cloud Flare而非Github时即为成功。

注意:如果在Github Pages中开启了Enforce HTTPS,那么在Cloud Flare的配置中,就要SSL/TLS加密模式配置为完全,而非默认的灵活。否则Cloud Flare将会使用HTTP模式回源,然后导致ERR_TOO_MANY_REDIRECTS错误。如图:

cf_ssl_conf.png