我之前一直以为Google在header那里得到404的状态码之后,就不读取页面的内容了,但现在看来这个想当然是错误的。
最近一些垃圾站发了很多垃圾广告链接,很多(上十万个)这些链接指向了我的网站,URL中直接带有广告内容。比如
http://mydomain.com/content/访问垃圾网站到www.垃圾.com
(我省去了url中原本应该带有的五角星之类的符号,因为我打不出来。。。)
广告语应该是电脑生成的,每个链接还不一样。
这样我的网站就多出十几万个外链,打开的都是404页面。
前两天我收到Google的邮件:
Googlebot found an extremely high number of URLs on your site http://mydomain.com/
Googlebot encountered problems while crawling your site http://mydomain.com/.
Googlebot encountered extremely large numbers of links on your site. This may indicate a problem with your site’s URL structure. Googlebot may unnecessarily be crawling a large number of distinct URLs that point to identical or similar content, or crawling parts of your site that are not intended to be crawled by Googlebot. As a result Googlebot may consume much more bandwidth than necessary, or may be unable to completely index all of the content on your site.
我用Google站长工具查询这个网站的信息,发现404页面在高速上升。大多是上面提到的那些垃圾外链。里面提供链接来源信息,很多是这些垃圾网站,但奇怪的是有一半是来自于这个链接本身!!!这些链接本身是404页面,但我在这里动态生成了一个报错页面,提示用户打开的这个链接不存在。问题就在于提示信息中的链接可以点击!看来Google访问了这个动态的404页面的内容,并抓取了里面的链接(链接指向这个404页面本身。。。)于是Google将进入一个死循环???
我针对这个问题,做了两个回应:
1.使用Google的disavow link工具,告诉google不要抓取这些垃圾域名来的外链。
2.修改404页面的生成代码,在里面不再生成打不开的页面的链接。
效果怎么只能观察。
附:不可信的Google官方发言:404外链不会影响你的网站 (显然他们不知道垃圾链接可以这么多,多到影响网站的正常收录)