搜索引擎蜘蛛抓取页面异常 百度索引但不放出来收录
有时候,会返回503,503 返回码代表网站临时无法访问,可能是网站服务器关闭或者其他临时措施造成的网页无法访问,一般来说,蜘蛛还会继续抓取几次。如果网站恢复正常,URL仍然被当作正常URL处理,如果服务器一直处于不可访问状态,那么搜索引擎就会将这些URL彻底从库中删除,这就要求我们必须维护网站的稳定性,尽量避免临时关闭的情况发生。返回码403是禁止访问状态,一般来说,如同503一样, 如被多次访问仍处于禁止访问状态,就会被搜索引擎从库里面删除。
在返回码中,有一类需要格外注意,就是301。301代表永久性移除,当前URL被永久性重定向到另外的URL。一般来说,因为改版等原因,部分URL需要永久被替换为新的URL,就必须使用返回码301进行处理,这样能把权重等一 并带过去,避免网站的流量损失。
返回码301的优化写法如下。
(1)创建一个htaccess.txt文件。
(2)在htaccess.txt里写好返回码301的跳转信息。
假设旧的URL为abc.com,需要重定向到www.abc.com,需在文件里写如下信息。
RewriteEngine on
RewriteCond %{http_ host} ^abc.com [NC]
RewriteRule ^(.*)$ http://www.abc.com/$1 [L, R=301]
(3)将htaccess.txt上传到FTP,然后将htaccess.txt修改为.htaccess。
需要提醒的是目前htaccess只适用于Linux系统,并需要虚拟主机支持,因此,在考虑.htaccess文件处理返回码301的时候,需要查看虚拟主机是否完全支持。
实际上,在重定向的处理上存在多种方式,简单来说,重定向可以分为http30x重定向、meta refresh重定向和js重定向。另外,大的搜索引擎公司,比如谷歌和百度都确认支持Canonical标签,可以通过制定一个权威页面的方式,引导蜘蛛只索引一个权威页面,从实际效果上来说,也是一种间接的重定向。在实际抓取过程中,蜘蛛会对各种重定向效果进行识别。
重定向的方法有多种,但是从SEO角度来说,如果是永久跳转的页面,尽量采用返回码301的跳转方式。另外,从时间结果来看,百度对Canonical的支持并不如谷歌好,采用Canonical 未必能得到如期效果。有些网站通过不同的路径进入同一页面,可能会出现多个URL的情况,当面对这种情况时,可能需要一些处理技巧。
外链等因素对搜索的排名是有影响的,那么在抓取环节是否也有影响呢?百度在它的抓取政策上有优先级的说明,即执行包括“深度优先遍历策略、宽度优先遍历策略、PR 优先策略、反链策略、社会化分享指导策略等”。同时,这也说明每个策略各有优劣,在实际情况中往往是多种策略结合使用才能达到最优的抓取效果。从这段官方说明里面可以看到PR优先策略、反链策略、社会化分享等字眼,我们可以认为,百度在实际抓取的时候,其实都考虑了这些因素,只是权重可能有所不同,因此,尽量提高网页PR,增加更高质量的外链,进行高质量的社会化分享,对网站的SEO工作是有积极意义的。
另外,针对互联网存在的大量“奋版”“采集”的网页情况,在抓取的过程中,蜘蛛会通过技术判断页面是否已经被抓取过,并对URL不同但是实际内容相同的页面的URL进行归一化处理,即视作-一个URL。也就是告诉SEO人员,不要通过大量创建页面的方式来获得更多的搜索资源,如果页面很多,但是每个页面的内容重复性很高,或者仅是URL中包含无效参数来实现多个页面,搜索引擎仍然把这些URL当作-一个URL处理,即网站页面不是越多越好,通过功利的方式拼凑网页,大量部署长尾,但是页面质量堪忧,效果会适得其反。如果大量此类页面被搜索引擎判断为低质量页面,可能会影响到整站的SEO效果。
蜘蛛在抓取的过程实际是依据链接不断往下探索的过程,如果链接之间出现短路,蜘蛛就无法往前爬了。在真实的网站运营中,我们可以看到很多网页实际潜藏在网站后端,蜘蛛是无法抓取到的,比如没有预留入口链接,或者入口链接已经失效等,这些无法抓取到的内容和信息,对于蜘蛛来说就是一个个的孤岛,对SEO人员来说就是没有完全发挥内容的引流作用。同时,因为网络环境或者网站规范等原因也可能导致蜘蛛无法爬行。
如何解决信息无法被抓取到的问题?几个可行的办法如下。
●采用搜索引擎平台提供的开发平台等数据上传通道,可以针对数据进行独立的提交。
●采用Sitemap提交方式。 大型网站或者结构比较特殊的网站,沉淀了大量的历史页面,这些历史页面很多具有SEO的价值,但是蜘蛛无法通过正常的爬行抓取到,针对这些页面,建立Sitemap文件并提交给百度等搜索引擎是非常必要的。
蜘蛛在爬行网站的时候,会遵循网站的协议进行抓取,比如哪些网页可以给搜索引擎抓取,哪些不允许搜索引擎抓取。常见的协议有HTTP协议、HTTPS协议、Robots 协议等。
HTTP协议规范了客户端和服务器端请求和应答的标准。客户端般是指终端用户,服务器端指网站。终端用户通过浏览器、蜘蛛等向服务器指定端口发送HT请求。发送HTTP请求会返回对应的HTTP Heder信息,我们可以看到包括是否成功、服务器类型、网页最近更新时间等内容。
HTTPS协议是-种加密协议,一般用户安全数据的传输。 HTTPS是在HTTP下增加了SSL层,这类页面应用比较多的是和支付相关或者内部保密信息相关的网页。蜘蛛不会自动爬行该类网页。因此,从SEO角度考虑,在建站的时候,尽量对页面的性质进行区分,对非保密页面进行HTTP处理,才能实现网页的抓取和收录。