相信技术的力量

Coding+Github双服务器托管个人博客

自从想认认真真写博客以来,会经常更新一些文章,无论是经验总结,还是读书笔记,还是纯扯扯淡。早就听说Github屏蔽了百度蜘蛛,也就是说百度搜不到我托管在Github上的博客,一直想找个空闲时间解决下这个事,于是今天就搞了一下:把博客分别托管在码云 Pages 和 Github Pages上,再通过DNS解析进行访问优化。

特殊说明

由于最后没有找到码云Pages 的绑定自定义域名在哪,所以没法通过http://www.crocutax.com/ 来访问部署到码云Pages上的博客,最终选择了 Coding Pages 作为国内的部署服务器,流程都是完全一样的,只是在Coding Pages页面有绑定自定义域名的操作而已,所以在此不再累述,本文仅作记录。开始!

由于在Github上部署过了,所以整体在oschina上就非常熟练了。
官方也有 码云 Pages 介绍,按照步骤来即可,无论是重新创建仓库+push,还是从Github导入都很简单,如果中间没有遇到坑的话,也就一两分钟的事。这里 把重点记录下。

添加公匙

oschina的公匙分为 项目公匙用户公匙

官方文档说明如下:
项目的 SSH key只针对项目,且我们仅对项目提供了部署公钥,即项目下的公钥仅能拉取项目,这通常用于生产服务器拉取仓库的代码。

而用户的 key 则是针对用户的,用户添加了 key 就对用户名下的项目和用户参加了的项目具有权限,一般而言,用户的 key 具有推送和拉取的权限 , 而项目的 key 则只具有拉取权限

具体的添加步骤,按照 生成并部署SSH key 来即可,一开始自己只是把之前生成好的公匙直接添加进用户公匙中,结果push的时候报出日下异常:

Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

最终通过在terminal终端输入ssh -T git@git.oschina.net来添加到 Git @ OSC,解决了此问题,报出·Welcome to Git@OSC, Crocutax(yourname)!·表明添加成功,之后就可以通过SSH方式正常的往仓库push了。

静态资源加载失败,网页样式丢失

在新建立仓库的时候,项目名称 必须和 用户名称 完全一致,注意不是 昵称,否则之后部署Pages服务时就会出现静态资源加载失败,网页样式丢失的情况。

按照我部署时踩坑的情况,如果部署完毕,网站地址样式为:
http://uesername.oschina.io/projectname,比如http://wangxw725.oschina.io/myblog,那么这个静态资源一定加载失败了,进去看到的就是简陋的博客目录。

如果创建仓库时项目名称和用户名称一致,那么效果如下,注意网址样式,此时就是加载成功的。
部署成功.png

deploy部署配置

修改根目录下_config.yml中的deploy配置,每次同时部署到Coding和Github两个仓库。

Paste_Image.png

DNS解析优化

国内使用Coding,海外使用Github,这样能相应的提升访问速度。

DNS解析优化.png

⬆️