关于百度无法爬取GitHub内容解决方案


关于百度无法爬取GitHub内容解决方案

既然百度无法爬取GitHub,那么我们只需要找个可以被百度爬取到的代码托管平台即可(并且还提供pages服务),基本只有国内的平台了:GiteeCoding!Gitee自定义域名要花钱(九十多,都可以买服务器了),而Coding是可以免费自定义域名的。这里推介大家使用企业版的Coding,因为企业版的Coding仓库服务器是在香港的,而普通版的服务器是在新加坡。地理原因,理论上企业版的更快一些!

  1. 将博客同时部署到两个仓库:GitHub和Coding

    deploy:
    - type: git
      repository: git@github.com:skyls03/skyls03.github.io.git
      branch: master
    
    - type: git
      repository: git@e.coding.net:sky03/sky03.git
      branch: master
  2. 在域名那里,配置两个解析

    线路类型作用:如果该值填“国内”,国内的IP就会去访问此项对应的记录值地址

    同理,如果该值填写“国外”,国外的IP就会去访问“国外”对应的记录值地址

    1. 线路类型百度或者国内,记录值为Coding仓库的地址
    2. 线路类型默认或者国外,记录值为GitHub仓库地址

  3. 这样来自百度的spider就会去爬国内Coding的地址,而两个仓库的内容又都是一样的,如果请求IP来自国外,它又会去访问国外的GitHub,这样还有利于外国华侨和那些科学上网的用户访问,一石二鸟!(我真他妈天才!)

  4. 如果你只用Coding仓库,那就不需要这么麻烦了

  5. 测试百度Spider能不能爬你的域名

    1. 在任意目录下执行以下命令(将“你的域名”换成你的域名)

      curl -A "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)" -o example.html 你的域名
    2. 执行完命令,在该目录下会生成一个文件:example.html,打开它,如果显示

      • Moved Permanently,说明301,被重定向了

      • Found,也就是爬到了

      • 如果打开是你的首页,说明爬取到的内容就是你的首页HTML内容。

      • 如果显示:

        说明域名是解析到GitHub的,403Forbidden访问禁止。


文章作者: Sky03
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Sky03 !
评论
 上一篇
静态博客访问优化之终极解决方案 静态博客访问优化之终极解决方案
前言 本人咸鱼学生一枚,没多大见识,以下有任何说的不对的地方,欢迎大家指正。 首先本教程是基于 域名已经备案 的前提下进行的,理论上,任何静态页面都可以使用本教程,哪怕是你写的一个小demo网页,想show给别人看,也可以使用,前提是域
2019-11-30
下一篇 
Hexo进阶之各种优化 Hexo进阶之各种优化
npm速度优化 玩hexo的,肯定经常和npm打交道,但是npm的下载速度着实是有点慢。 由于下面内容会安装较多的插件,建议先更改npm仓库地址,以便能更快的安装插件 阿里的淘宝团队在国内做了个跟npm仓库一样的镜像叫cnpm。 淘宝
2019-11-12
  目录