如何解决百度爬虫无法爬取搭建在Github上的个人博客的问题?

最近,我注意到我网站的流量大多来自于谷歌。我自己通过百度也无法搜索到我的博客中的文章。经过一些尝试,我发现是 Github 主动屏蔽了来自于 BaiduSpider 的请求。 以下是百度Spider抓取结果及页面信息:提交网址: jerryzou.com 抓取网址: jerryzou.com 抓取UA: Mozilla/5.0 (compatible; Baiduspider/2.0; ) 抓取时间: 2015-06-02 20:50:04 网站IP: 103.245.222.133 下载时长: 0.394秒 抓取异常信息: …
关注者
318
被浏览
17161

25 个回答

既然不想放弃Github,唯一的办法就是不让百度爬虫直接抓取GIthub的内容,而是抓取自己网站的一个镜像,将网站的内容镜像到gitcafe,步骤如下:

git remote add gitcafe https://gitcafe.com/ezlippi/ezlippi.git
git checkout -b gitcafe-pages
切换到一个新分支 'gitcafe-pages'
git push gitcafe master:gitcafe-pages
Username for 'https://gitcafe.com':ezlippi 
Password for 'https://ezlippi@gitcafe.com'
Counting objects: 17, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (10/10), done.
Writing objects: 100% (10/10), 1.06 KiB | 0 bytes/s, done.
Total 10 (delta 8), reused 0 (delta 0)
To https://gitcafe.com/ezlippi/ezlippi.git
   f0d0296..51611d7  master -> gitcafe-pages
  • gitcafe绑定自己的域名
  1. 点击项目的右上角的 项目配置
  2. 在项目的 基础设置 中配置项目主页
  3. 在 page服务 中添加自己的域名,比如我这里是coolshell.infocoolshell.info.
  • DNS的配置中增加一项 CNAME.
我使用 dnspod 这个提供商来管理DNS.CNAME一般可以按解析路线或者网络类型来单独配置,网络类型选择国内或者联通,设置之后等待一段时间百度的抓取就 恢复正常了,如下图所示
用英文搜了一下,果然搜到了解决方案:
html - github blocks Baidu spider, how can I make it work again?

总结一下:
  1. 换供应商,这个方案不是很靠谱,github 还是很好用的
  2. 让 github 改,这个也很难
  3. 利用 CDN 加速 √ 这个方案可行!

我忽然想到,我以前就是用 CDN 加速的,所以我的百度索引量还不错,也就没在意。
后来 github pages 官方架设了 CDN,国内用户访问会直接访问澳洲的 CDN,速度还不错,所以我就取消了自己的 CDN 配置。
(就不打广告了,大家自己去搜免费 CDN,github pages 都是静态页面,很适合用这个)

具体效果如何?那我就贴一个我取消 CDN 后的网站搜索引擎来源情况:
我差不多是在2个月前取消的,百度来源一落千丈啊!
我现在又重新用回了国内的免费 CDN 了,过几周后看看效果。

最后,感谢题主提醒啊,不然我都没在意这件事情。

===================================================
6月8日更新

我切换到加速乐CDN后,索引量恢复了很多,但是今天突然开始又不行了…


后来我又尝试了七牛的网站镜像服务,目前一切正常。再观察一段时间。

===================================================
6月15日更新

用七牛后目前一切正常,再也没有 403 了



===================================================
6月18日更新
突然发现七牛的镜像功能并不能自动更新内容。仔细看了一下,七牛的镜像功能是用来做迁移的,而不是真正的回源CDN

于是又尝试了一下 又拍云,发现它是支持回源CDN的,而且可以配置过期时间。