关于百度无法爬取GitHub内容解决方案
既然百度无法爬取GitHub,那么我们只需要找个可以被百度爬取到的代码托管平台即可(并且还提供pages服务),基本只有国内的平台了:Gitee
和Coding
!Gitee自定义域名要花钱(九十多,都可以买服务器了),而Coding是可以免费自定义域名的。这里推介大家使用企业版的Coding,因为企业版的Coding仓库服务器是在香港的,而普通版的服务器是在新加坡。地理原因,理论上企业版的更快一些!
将博客同时部署到两个仓库: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
在域名那里,配置两个解析
线路类型作用:如果该值填“国内”,国内的IP就会去访问此项对应的
记录值地址
同理,如果该值填写“国外”,国外的IP就会去访问“国外”对应的
记录值地址
线路类型
为百度
或者国内
,记录值为Coding仓库的地址
线路类型
为默认
或者国外
,记录值为GitHub仓库地址
这样来自
百度的spider
就会去爬国内Coding
的地址,而两个仓库的内容又都是一样的,如果请求IP来自国外,它又会去访问国外的GitHub
,这样还有利于外国华侨和那些科学上网的用户访问,一石二鸟!(我真他妈天才!)如果你只用Coding仓库,那就不需要这么麻烦了
测试百度Spider能不能爬你的域名
在任意目录下执行以下命令(将“你的域名”换成你的域名)
curl -A "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)" -o example.html 你的域名
执行完命令,在该目录下会生成一个文件:
example.html
,打开它,如果显示Moved Permanently
,说明301,被重定向了Found
,也就是爬到了如果打开是你的首页,说明爬取到的内容就是你的首页HTML内容。
如果显示:
说明域名是解析到GitHub的,403Forbidden访问禁止。