Baiduspider抓取商品页返回403错误,求救

2016-07-07 15:24 来源:www.chinab4c.com 作者:ecshop专家

自己用浏览器访问正常,并且用request Builder模拟Baiduspider的User-Agent返回也正常,就是日志里面百度蜘蛛抓取商品页全是403错误,网站一年多了,还没有收录商品页,原先以为是其它原因,看了日志才明白...
希望大能帮找下原因..
网站地址:http://www.showmebar.com

  1. 123.125.66.25 - - [11/May/2010:02:16:47 +0800] "GET /goods-2135-2010\xb1\xac\xbf\xee\xba\xab\xb0\xe6\xcf\xc4\xbc\xbe\xc1\xac\xd2\xc2\xc8\xb9\xc5\xae\xd7\xb0\xc8\xb9\xd7\xb0\xd2\xbb\xbc\xfe\xb4\xfa\xb7\xa2\xbb\xf5.html HTTP/1.1" 403 258 "-" "Baiduspider+(+http://www.baidu.com/search/spider.htm)"
  2. 220.181.7.107 - - [11/May/2010:05:46:09 +0800] "GET /goods-2115-2010\xd0\xc2\xbf\xee\xb6\xcc\xd0\xe4\xb3\xc4\xc9\xc0\xba\xbc\xc5\xc9\xc5\xae\xd7\xb0\xc5\xfa\xb7\xa2\xb4\xfa\xcf\xfa.html HTTP/1.1" 403 250 "-" "Baiduspider+(+http://www.baidu.com/search/spider.htm)"
  3. 220.181.7.48 - - [11/May/2010:06:07:46 +0800] "GET /goods-2034-2010\xb4\xba\xcf\xc4\xbc\xbe\xd0\xc2\xbf\xee\xc5\xae\xd7\xb0\xc1\xac\xd2\xc2\xc8\xb9\xc5\xae\xd7\xb0\xc5\xfa\xb7\xa2\xb4\xfa\xcf\xfa.html HTTP/1.1" 403 254 "-" "Baiduspider+(+http://www.baidu.com/search/spider.htm)"
  4. 220.181.7.29 - - [11/May/2010:07:12:34 +0800] "GET /goods-2011-2010\xcf\xc4\xbc\xbe\xd0\xc2\xbf\xee\xd1\xa9\xb7\xc4\xc1\xac\xd2\xc2\xc8\xb9\xc5\xae\xd7\xb0\xa3\xa8\xc5\xe4\xd1\xfc\xb4\xf8\xa3\xa9.html HTTP/1.1" 403 254 "-" "Baiduspider+(+http://www.baidu.com/search/spider.htm)"
复制代码

回答:
找到原因了,不能不说是ecshop的一种bug,ecshop采用utf-8编码,并且后台的urlrewrite设成最高级别的时候,商品的url中会带商品名的urlencode的形式,但那是utf-8编码的,google可以很好识别,但百度就不行了,它访问过来的时候是以中文或是乱码的形式,但这种形式apache不支持宽字符,就产生了403错误.如果把ie的"总是以utf-8"编码发送选项去掉的话,就符合百度蜘蛛的访问形式了,如果把后面urlencode的字符加进去一个中文的话,这时也就出现了403错误了,,,这就是我网站近两年了百度还没有收录商品页的原因了,血的教训.

解决办法:使用简单的urlrewrite,永远不要再使用复杂的urlrewrite

现在 搜索引擎会越来越智能。建议使用简单重写或不重写。地址对收录的影响不大。

顶顶~~~~