hexo+github+coding双线部署(加快博客访问速度)

终于去做了胃镜有种某个阶段尘埃落定的感觉,要做个好好生活的快乐小学鸡~把之前咕咕咕的双线部署先干掉!٩(˃̶͈̀௰˂̶͈́)و


双线部署

github-pages的访问速度一般,所以可以国内访问走coding,国外走github

Mac OS下用「hexo+github」搭建个人博客!

首先假设我的博客已经上传了github仓库,利用github-page,有了一个leflacon.github.io这样的域名,我的所有SEO优化也是基于原先的域名做的

1 Coding

1.1 创建项目

先去注册balabala➡️ Coding官网,没想到之前注册的个人账号在Coding改版成团队之后还能用,诶嘿

在右上角选择「创建项目」:

选择「代码托管项目」,第一个「项目名称」这项填balabala用户名.coding.me,别的随意,然后勾选readme的选项,

1.2 打开静态网站

进入项目后在左下角有个「项目设置」,点击会进入「项目与成员」页面,把第四个选项构建与部署打开

此时返回左侧设置页面就会多了个「构架与部署」选项,进入「静态网站」,先实名验证然后「立即发布静态网站」

填表,网站名称写balabala用户名,按照默认的:触发机制「自动部署」,勾选「代码更新时自动部署」,选择「推送到master时自动构建」

然后就显示网站创建成功了,coding会给一个奇奇怪怪的不太好看的访问地址,但是没事,我也不看它。。

1.3 添加SSH公钥

这个就不具体说咋创建了,创建过的复制出来就好了

回到Coding,右上角进入「个人设置」-「SSH公钥」-「新增公钥」,把刚刚的公钥复制进去,然后勾选「永久有效」!!!

然后终端输入ssh -T git@e.coding.net,看看是不是通过了,如果显示xxx,你好,你已经通过 SSH 协议认证 Coding.net 服务,这是一个个人公钥.那么就可以进入下一步啦

2 域名

一直都没买自己的域名来着,腾讯云,因为腾讯云买域名附带「域名云解析」服务,安全访问快速多节点多线路,看起来很靠谱0.0

输入自己想要的搜一下,不过不知道新域名的收录效果咋样,先试试水吧反正首年很便宜0.0

买完之后进入「控制台」,然后就是实名认证等待审核之类的了

然后接下来状态出现了「域名 DNS 未修改」这样的问题,如果DNS服务器不正确的话解析是没法生效的,但是等我看完官方文档:修改域名DNS服务器之后,啥都没干一刷新解析状态就变成正常啦~诶嘿那继续

3 域名解析

点击上图的「解析」选项,然后开始添加记录

3.1 解析一

先添加github-pages的:

主机记录选www(主机记录就是域名前缀),记录类型选CNAME(将一个域名指向另一个域名),线路选默认(境外访问走github,境内走coding,但是coding似乎没那么靠谱。。所以github这项填默认吧),记录值就写github-pages的那个博客地址,TTL就600(地方DNS缓存域名记录信息的时间,默认的600s最常用,不用修改)

3.2 解析二

然后ping一下原来的github域名,可以得到一个ip,复制下来

添加第二条记录,主机记录选@,记录类型选A,线路默认,记录值写刚刚得到的那个ip,TTL还是600s

过了几天我又ping了一下这个域名,然后那个ip不一样了,,我就又加了一条解析0.0

3.3 解析三/四

同理添加coding的解析记录,也是两条,线路类型都选境内(这样境内访问就走Coding的仓库啦)

但是看了其他一些教程coding的线路选择写的是默认,因为coding不太稳定之类的,我也不太清楚,所以此处先填「默认」,目前使用还未出现问题

ping codingpage给的奇奇怪怪得链接

最后的解析是这样哒:

4 域名设置

4.1 Github设置

在「Settings」里下拉到「GitHub Pages」部分,填好腾讯云那个新域名,然后勾选https,save

之后上面的状态提示就会改变:

4.2 Coding设置

在「静态网站」页面点击右上角的设置,就可以进入「修改静态网站」页面

下拉,在「自定义域名」部分绑定新域名,勾选https

这里补充一个设置:如果直接按照上面这样的流程下来,证书状态那一项是会出错的,需要先把关于github的解析记录都暂停,然后申请SSL证书(很快就有结果),申请成功后勾选https,这样证书状态才会显示为下面的绿色正常

4.3 CNAME

💡4.3节为3.29补充

上一步中可见coding是可以绑定自己的新域名的,但是github没有绑定域名这个选项,所以需要手动绑定,如果没有绑定的话就会产生下面这样的状况:

每次hexo d之后在「Settings」里下拉到「GitHub Pages」部分,那个site提示会变回xxx.github.io,需要重新手动再填新域名0.0

手动绑定的操作如下:

cd source在source目录下touch CNAME新建一个CNAME文件

直接输入新域名:

然后在站点配置文件(根目录下)中的不渲染的文件中加上这个文件:

1
2
skip_render:
- CNAME

5 站点配置文件

进博客根目录把站点配置文件(根目录下的_config.yml)的deploy部分改改,加一条coding的:

格式如下:

1
git@e.coding.net:team-name/project-name.git

然后就是hexo clean && hexo g && sudo hexo d

然后万一出现了Error: git@e.coding.net: Permission denied (publickey).fatal: Could not read from remote repository.这样的问题QAQ,或许是站点配置文件里deploy没写对,或许是ssh没链接好,坑了我好久好久唉ORZ

6 其他

可以用dig命令查询一下是否解析成功了

请求leflacon.top这个域名的时候,要先去DNS服务器把这个通俗的名字转化成一个ip地址,然后就得到了124.156.193.111(就是之前ping coding给的链接 得到的ip地址)A表示地址记录(域名->地址)

最后,如果有用leancloud之类的,不要忘了在安全域名里加上新域名~


SEO优化什么的之后再补吧,不晓得会出什么问题先这样,,至少现在博客的访问速度和之前相比似乎快了很多(也可能是我的心理作用hhhhhh)!世界晚安!

3.12更新

在站长工具测了一下速度,之前的github.io和现在的.top的速度对比还是非常特别很明显的(并不是我的心理作用hhhhh)真实的快了四倍(((o(*゚▽゚*)o)))

目前出现问题的有评分小星星,就加载不出来不知道什么原因。。

还有一个问题是busuanzi的计数清零了,找了老半天据说可以通过在官网注册登录来实现数据转移,但是官网现在关闭注册了ORZ,还是有一丢丢心痛的毕竟这一年也有好几万了

此外google可以正常收录,那么就先这样啦

3.16更新

发现看板娘似乎不会说话了,之前调用的是一言的API看板娘说个没完的0.0,然后去一言的官方文档看了一下,我之前的那个是初版接口,换成v1稳定接口v1.hitokoto.cn就好啦,v1的线路是全球的

3.18更新

还是要把站点配置文件的url改成新域名

这样才能保证sitemap里的url和主域名的一致性,不然sitemap里的链接提交不了,也就是说之前在百度和google提交的站点都要重做,,,嗯就是这样,之前的都废弃了

3.26更新

百度的收录速度着实比google慢很多很多,百度的sitemap提交后一直是等待状态,看了下网上的讨论这个要多久好像看百度的心情,那就先放着不管了(我自己又手动提交了一遍所有链接ORZ)

3.27更新

昨天在访问友链的博客的时候发现有些博客不能访问,会报下图这样的错误,有点庆幸及时搞了双线部署(等coding崩的时候我就笑不出来了hhhhhh_(:з」∠)_

似乎是神奇的BGP FlowSpec:如何看待2020 年 3 月 26 日 GitHub 疑似遭受中间人攻击?


参考教程:

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2018-2020 LeFlacon

奶茶一杯 快乐起飞

支付宝
微信