Coding.net上建立镜像解决Github Pages博客百度无法收录问题

| 分类 blog  | 标签 git  blog  Github Pages  Coding.net Pages 

注:目前 coding.net 免费帐号的自定义域名页面会有重定向,已无法被百度正常收录了。

由于Github禁止百度爬虫访问,托管在Github Pages上的博客无法被百度收录。

查看知乎上的讨论:如何解决百度爬虫无法爬取搭建在Github上的个人博客的问题?

CDN的方法不太可靠,而建立镜像,让百度爬虫直接抓取镜像网站上的内容,是较可行的。

国内Coding.net网站提供的Pages服务,和Github Pages基本一致,能自定义域名,基于git和Jekyll。因此,可以选择在Coding.net上建立Github Pages镜像。

基本思路:

  1. 建立github page,通过DNSPod将默认线路的域名CNAME指向Github Pages地址。
  2. 在Coding.net上建立镜像,通过DNSPod将百度线路的域名CNAME指向Coding.net Pages地址。
  3. 将Github Pages代码库中的更新和coding.net同步

一、在Coding.net上创建Pages

在Coding.net上注册后,创建一个与用户名相同的项目,如用户名是haiiiiiyun,则项目名称也是haiiiiiyun。

创建项目后,在项目的Pages页面里,修改Pages服务的关联分支为master,然后开启Pages服务。再填入你要绑定的域名。

现在,你在Coding.net 上的Page地址就是haiiiiiyun.coding.me了。

二、同步代码

  1. 将Github Pages项目代码库clone到本地,比如我的Github Pages项目名称为haiiiiiyun.github.io
  2. 将本地github项目与coding.net关联,即添加一个git remote
haiiiiiyun.github.io$ git remote add mirror git@git.coding.net:haiiiiiyun/haiiiiiyun.git
  1. 每次github项目库更新提交后,再一并同步到coding.net上的镜像库。
haiiiiiyun.github.io$ git add --all
haiiiiiyun.github.io$ git commit 'comment'
haiiiiiyun.github.io$ git push  # 提交到github

haiiiiiyun.github.io$ git push mirror master # 提交到coding.net

操作后,github和coding.net上的项目代码就同步了。

三、DNSPod上设置CNAME

将默认线路的CNAME记录值指向Github Pages。再将百度线路的CNAME记录值指向Coding.net Pages。

设置完后,百度爬虫就能从镜像网站上抓取网页内容了。 DnsPod设置


上一篇     下一篇