将博客同时部署到 github 与 coding

之前博客部署到 github ,由于我国国情所致,在国内访问 github 会比较慢,或者有墙的可能,于是考虑将博客同时部署到 githubcoding ,并在域名解析时使国内外访问分流,从而实现全球快速访问。

coding 设置

新建项目

先去 coding 注册一个用户名,然后新建一个项目,此处新建项目的名称最好与注册用户名一致,以免访问时还得加上项目名称:

配置 SSH

点击个人账户下的 SSH 公钥配置,如同配置 github 时一样,将自己用户名下的 .ssh 目录下的 id_rsa.pub 文件的全部内容拷贝到此处,名称随意:

此时可以测试一下是否配置成功:
 

1
$ ssh -T git@git.coding.net

如果成功会提示:
 

1
Hello stevenshichina You've connected to Coding.net by SSH successfully!

部署

在站点配置文件 _config.yml 中修改部署配置:
 

1
2
3
4
5
deploy:
type: git
repository:
github: https://github.com/stevenshichina/stevenshichina.github.io.git,master
coding: https://coding.net/stevenshichina/stevenshichina.git,master

此时可以输入命令将博客部署到 coding 上:
 

1
2
3
$ hexo clean
$ hexo g
$ hexo d

过程中会提示输入用户名与密码,之后在自己的项目下会看到文件已经推送过来。

page 服务

点击自己的项目里的 pages 服务页面,部署来源选择 master 分支,这个与站点配置文件要一致,随后绑定自己的域名:

DNS配置

我的域名选的万网,登录阿里云,点击自己用户名下的管理控制,找到云解析服务,在后面的解析设置中进行以下的设置:

WWW 可以使用户不输入 www 时也可以访问网站,在解析codingnet 时选择默认,解析 github 时选择世界。

去除coding 广告

当将 coding page 与自己的域名绑定后,访问域名,coding 网站首先会推送 5s 的广告,这样导致百度爬虫爬到的不是自己的主页而是 coding ,因此需要去除该广告,官方可以升级会员去除,也可以将 coding 主页放置到自己网站的首页上,可以参考 去除『Hosted by Coding Pages』页面 。对于 nexT 主题,可以修改主题目录下的 layout/_partials/footer.swig 文件:
 

1
2
3
4
<div class="theme-info">
{{ __('Hosted by') }}
<a href="https://pages.coding.me" style="font-weight: bold">Coding Pages</a>
</div>

另外需要在coding主页自己的项目page页面设置,勾选已放置 Hosted by Coding Pages即可。

由于水平有限,文章难免存在一些问题,欢迎交流指正。

您的支持是我原创的动力