SEO搜索引擎优化:技巧、策略与实战案例
上QQ阅读APP看书,第一时间看更新

1.3 收录

收录是指网页被搜索引擎抓取到,然后放到搜索引擎的库里,等到人们搜索相关词汇的时候,可以在搜索结果页展示列表看到已经收录的页面及页面信息。我们所说的“网页被收录”即能在搜索结果页看到相关的页面。反之,“网页没有被收录”问题就复杂一些,因为在搜索结果页没有看到对应的页面,并不意味着网页就没在搜索引擎的库里,或者说就没有被收录,有可能是网页针对当前的搜索词汇排名不好,在760个记录之外,因此没有得到展示。

收录涉及网页被搜索引擎蜘蛛抓取,然后被编入搜索引擎的索引库,并在前端被用户搜索到这一系列的过程。对SEO人员或者希望对自己网站进行优化的非专业SEO人员来说,了解页面是如何被搜索引擎收录的,了解搜索引擎的收录原理,都是极有好处的,能帮助你在进行网站SEO的时候尽量遵循收录的规律,提高网站被收录的比例。

1.3.1 搜索引擎蜘蛛的工作原理

收录的第一个环节就是抓取。抓取的过程是搜索引擎应用程序去抓取网站的网页,这里负责搜索引擎抓取网页职能的程序俗称蜘蛛(Spider),蜘蛛是一个形象的说法,因为互联网就是一张巨大的蜘蛛网,搜索引擎的程序通过网络不断地进行爬行和探索。每个互联网公司都有自己的抓取蜘蛛,比如百度蜘蛛(Baiduspider)、谷歌蜘蛛、搜狗蜘蛛等。对于百度来说,常见的蜘蛛如表1-3所示。

表1-3 常见蜘蛛

蜘蛛通过网站提交的Sitemap(网页地图)或者在互联网其他地方留下的页面URL信息,爬行到网站对应页面,然后沿着网站页面其他链接一层层往下爬行,发现更多的页面。

蜘蛛抓取网页是收录页面工作的上游,通过蜘蛛对网页的抓取,发现更多页面,同时知道哪些页面已经有了更新,从而实现对互联网页面的抓取和持续更新。

关于蜘蛛抓取系统的工作原理,可以参考百度蜘蛛抓取的说明。

简而言之,蜘蛛抓取系统包括链接存储系统、链接选取系统、DNS解析服务系统、抓取调度系统、网页分析系统、链接提取系统、链接分析系统、网页存储系统。Baiduspider通过这种系统的通力合作完成对互联网页面的抓取工作。

1.3.2 应对蜘蛛抓取基本策略

在蜘蛛实际抓取网页的过程中,因为网页内容的复杂性(文本、Flash、视频等)和技术实现的多样性(纯静态、动态加载等),为了更高效地利用蛛蛛资源,搜索引擎公司会置顶不同的抓取策略,作为SEO人员,可以参考搜素引擎公司对抓取策略的描述,采用最大化的SEO方法。

作为国内最大的搜索引擎公司,百度在它的官方文档中是如下这样描述抓取策略的。

互联网资源具有庞大的数量级,这就要求抓取系统尽可能高效地利用带宽,在有限的硬件和带宽资源下尽可能多地抓取到有价值的资源。这就造成了另一个问题,耗费被抓取网站的带宽造成访问压力,如果程度过大,将直接影响被抓取网站的正常用户访问行为。因此,在抓取过程中要进行一定的抓取压力控制,实现既不影响网站的正常用户访问,又能尽量多地抓取到有价值资源的目标。

通常情况下,采用的最基本的方法是基于IP的压力控制。这是因为如果基于域名,可能存在一个域名对多个IP(很多大网站)或多个域名对应同一个IP(小网站共享IP)的问题。实际工作中,往往根据IP及域名的多种条件进行压力控制。同时,站长平台也推出了压力反馈工具,站长可以人工调配对自己网站的抓取压力,这时Baiduspider将优先按照站长的要求进行抓取压力控制。

对同一个站点的抓取速度控制一般分为两类:其一,一段时间内的抓取频率;其二,一段时间内的抓取流量。同一站点不同的时间抓取速度也会不同,例如,夜深人静的时候抓取的可能就会快一些。也视具体站点类型而定,主要思想是错开正常用户访问高峰,不断地调整。对于不同站点,也需要不同的抓取速度。

上面的描述很简洁,但是从这个描述里面,我们可以得到启发,蜘蛛抓取页面是有压力控制的,对于特别大型的网站来说,不可能指望蜘蛛爬行到一个网站后,会一次性抓取到所有的网站,因此,作为SEO人员来说,尽量减少蜘蛛的压力,对网站的网页收录是有好处的。一般来说,减轻蜘蛛压力有以下两种方法。

方法一:采用Nofollow(反垃圾链接的标签)的策略,将蜘蛛引导到最有价值的页面。Nofollow标签用来告诉蜘蛛,如果遇到带着此标签的页面或者链接,就不要继续追踪了,这样蜘蛛就可以爬行到其他更加有用的页面。

方法二:在Sitemap中定义不同页面的权重和更新频率,就是在网站的Sitemap文件中,定义好每个链接的权重和更新的频率,这样,蜘蛛在爬行到这些链接和页面的时候,会识别哪些页面比较重要,可以重点抓取,哪些页面更新比较频繁,需要蜘蛛分配更多的注意力。

1.3.3 应对蜘蛛页面抓取异常

搜索引擎在抓取网页的时候,可能会遇到各种情况,有的页面抓取成功,有的抓取失败。怎么显示一个页面的实际抓取结果呢?主要是通过返回码进行示意,代表抓取成功与否和遇到的问题。比如我们常见的,有时候打开一个页面,页面一片空白,上面只显示404。这里的404就是一种返回码,代表当前抓取的页面已经失效,遇到显示404的页面,如果短期内搜索,蜘蛛再发现这个URL,也不会对其进行抓取。

有时候,会返回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的时候,需要查看虚拟主机是否完全支持。

实际上,在重定向的处理上存在多种方式,简单来说,重定向可以分为http 30x重定向、meta refresh重定向和js重定向。另外,大的搜索引擎公司,比如谷歌和百度都确认支持Canonical标签,可以通过制定一个权威页面的方式,引导蜘蛛只索引一个权威页面,从实际效果上来说,也是一种间接的重定向。在实际抓取过程中,蜘蛛会对各种重定向效果进行识别。

重定向的方法有多种,但是从SEO角度来说,如果是永久跳转的页面,尽量采用返回码301的跳转方式。另外,从时间结果来看,百度对Canonical的支持并不如谷歌好,采用Canonical未必能得到如期效果。有些网站通过不同的路径进入同一页面,可能会出现多个URL的情况,当面对这种情况时,可能需要一些处理技巧,关于Canonical的使用技术可参见本书关于Canonical的专门讲解。

外链等因素对搜索的排名是有影响的,那么在抓取环节是否也有影响呢?百度在它的抓取政策上有优先级的说明,即执行包括 “深度优先遍历策略、宽度优先遍历策略、PR优先策略、反链策略、社会化分享指导策略等”。同时,这也说明每个策略各有优劣,在实际情况中往往是多种策略结合使用才能达到最优的抓取效果。从这段官方说明里面可以看到PR优先策略、反链策略、社会化分享等字眼,我们可以认为,百度在实际抓取的时候,其实都考虑了这些因素,只是权重可能有所不同,因此,尽量提高网页PR,增加更高质量的外链,进行高质量的社会化分享,对网站的SEO工作是有积极意义的。

另外,针对互联网存在的大量“盗版”“采集”的网页情况,在抓取的过程中,蜘蛛会通过技术判断页面是否已经被抓取过,并对URL不同但是实际内容相同的页面的URL进行归一化处理,即视作一个URL。也就是告诉SEO人员,不要通过大量创建页面的方式来获得更多的搜索资源,如果页面很多,但是每个页面的内容重复性很高,或者仅是URL中包含无效参数来实现多个页面,搜索引擎仍然把这些URL当作一个URL处理,即网站页面不是越多越好,通过功利的方式拼凑网页,大量部署长尾,但是页面质量堪忧,效果会适得其反。如果大量此类页面被搜索引擎判断为低质量页面,可能会影响到整站的SEO效果。

蜘蛛在抓取的过程实际是依据链接不断往下探索的过程,如果链接之间出现短路,蜘蛛就无法往前爬了。在真实的网站运营中,我们可以看到很多网页实际潜藏在网站后端,蜘蛛是无法抓取到的,比如没有预留入口链接,或者入口链接已经失效等,这些无法抓取到的内容和信息,对于蜘蛛来说就是一个个的孤岛,对SEO人员来说就是没有完全发挥内容的引流作用。同时,因为网络环境或者网站规范等原因也可能导致蜘蛛无法爬行。

如何解决信息无法被抓取到的问题?几个可行的办法如下。

● 采用搜索引擎平台提供的开发平台等数据上传通道,可以针对数据进行独立的提交。

● 采用Sitemap提交方式。大型网站或者结构比较特殊的网站,沉淀了大量的历史页面,这些历史页面很多具有SEO的价值,但是蜘蛛无法通过正常的爬行抓取到,针对这些页面,建立Sitemap文件并提交给百度等搜索引擎是非常必要的。

蜘蛛在爬行网站的时候,会遵循网站的协议进行抓取,比如哪些网页可以给搜索引擎抓取,哪些不允许搜索引擎抓取。常见的协议有HTTP协议、HTTPS协议、Robots协议等。

HTTP协议规范了客户端和服务器端请求和应答的标准。客户端一般是指终端用户,服务器端指网站。终端用户通过浏览器、蜘蛛等向服务器指定端口发送HTTP请求。发送HTTP请求会返回对应的HTTP Header信息,我们可以看到包括是否成功、服务器类型、网页最近更新时间等内容。

HTTPS协议是一种加密协议,一般用户安全数据的传输。HTTPS是在HTTP下增加了SSL层,这类页面应用比较多的是和支付相关或者内部保密信息相关的网页。蜘蛛不会自动爬行该类网页。因此,从SEO角度考虑,在建站的时候,尽量对页面的性质进行区分,对非保密页面进行HTTP处理,才能实现网页的抓取和收录。

1.3.4 用Robots协议引导蜘蛛对页面进行抓取

Robots协议是放在根目录下的一个协议,也是蜘蛛爬行网站的时候需要访问的第一个文件,通过解读Robots文件的策略,蜘蛛可以知道哪些页面可以爬行,哪些不可以爬行。一般来说,网站都是可以开发给蜘蛛来抓取的,某些不允许抓取的页面或者频道,只需要在Robots里面设定Disallow(禁止抓取的命令)就可以。但是在实际运营中,可能面临更复杂的情况,比如整站已经在HTTPS下,但是部分页面需要蜘蛛爬行,怎么办?有以下几个解决办法。

(1)复制一份到HTTP下。

(2)使用user-agent判断来访者,将蜘蛛引导到HTTP页面。

关于Robots文件,详细说明如下。

(1)特定页面已经不需要蜘蛛抓取,可以进行Disallow。

(2)某类集中的页面具有共同的URL参数,可以实现批量禁止抓取功能。在操作批量禁止的时候,需要避免误伤,即具有同样URL特征的功能可能并不在禁止的目的之内,无意中被禁止了。

关于同类特征的URL的一个特殊应用就是批量禁止动态URL的抓取。比如一个动态发布内容的网站,初始页面都是动态页面,从SEO角度考虑,这些动态页面全部批量生成了对应的静态页面,如下。

http://www.abc.com/?id=1

http://www.abc.com/?id=2

……

(已经批量生成了如下)

http://www.abc.com/1.html

http://www.abc.com/2.html

……

如果同时被蜘蛛抓取了动态页面和对应的静态页面,那么网站就存在大量的重复页面,对SEO是不好的。可以通过Robots功能,统一禁止动态URL的抓取,比如在Robots文件里写如下内容。

Disallow:/ *?*

在抓取方面,蜘蛛会依据实际情况调整对网站的抓取频次,即分配抓取定额,每天定量抓取网站内容,“定量”这个词意味着是有限的,一个大门户网站如果一次性提交10万条URL,并不意味着蜘蛛会很快把10万条数据抓取回去,因此,必须有耐心跟踪搜索蜘蛛在网站每天的爬行和收录情况。

1.3.5 影响页面抓取的几个重要原因

影响蜘蛛爬行并最终影响到页面收录结果主要有几个方面的原因。

1.网站的更新情况

一般来说,网站更新很快,蜘蛛就会更快地抓取网站的内容。如果网站的内容很长时间都没有任何的更新,蜘蛛也会相应调整对网站的爬行频率。更新频率对新闻等网站来说很关键。因此,保持每天一定的更新数量,对吸引蜘蛛是非常重要的。

2.网站内容的质量

对于低质量的页面,搜索引擎一直是打击的,因此,创建高质量的内容,对于吸引蜘蛛是非常关键的,从这个角度来说,“内容制胜”是完全正确的。如果网页是低质量的,比如大量采集相同内容,页面核心内容空泛,就无法获得蜘蛛的青睐。

3.网站是否可以正常访问

网站是否可以正常访问对搜索引擎来说就是连通度。连通度要求网站不能经常访问不了,或者访问速度特别慢。从蜘蛛角度来看,希望能提供给检索客户的网页都是可以正常访问的页面,对于服务器反应速度慢或者经常死机的服务器,相关网站肯定会有负面的印象,严重的就是逐渐减少爬行,甚至剔除已经收录的页面。

在现实中,因为国内的服务器服务比较贵,另外,基于监管的要求,国内网站的建立需要有备案制度,需要经历网上上传备案信息等流程,部分中小网站的站长可能会租用国外的服务器服务,比如Godaddy(一家提供域名注册和互联网主机服务的美国公司)服务等。不过从国内访问国外服务器,距离较远的原因,访问慢或者死机情况不可避免,从长远来说,对网站的SEO效果是一个制约。如果要用心经营一个网站,还是尽量采用国内的服务器服务,可以选择一些服务比较好、界面比较友好的服务器供应商,当前多家公司推出的云服务器就是不错的选择。

此外,搜索引擎会依据网站的综合表现,对网站进行评级,这个评级不能完全等同于权重,但是,评级的高低会影响到蜘蛛对网站的抓取策略。

在抓取频次方面,搜索引擎一般都提供可以调整抓取频次设置的工具,SEO人员可以依据实际情况进行调整。对于服务请求比较多的大型网站,可以通过调整频次的工具来减轻网站的压力。

在实际抓取过程中,如果遇到无法访问的抓取异常情况,会导致搜索引擎对网站的评级大大降低,相应影响抓取、索引、排序等一系列SEO效果,最终反馈到流量的损失上。

抓取异常的原因有很多,比如服务器不稳定,服务器一直超负荷运行,或者协议出现了错误。因此,需要网站运维人员对网站的运行进行持续跟踪,确保网站稳定运行。在协议配置上,需要避免一些低级的错误,比如Robots的Disallow设置错误。曾经有一次,一个公司管理人咨询SEO人员,问他们委托外部开发人员做好网站后,在搜索引擎怎么都无法搜索到,是什么原因。SEO人员直接在URL地址栏输入他的网站Robots地址,赫然发现里面禁止了(Disallow命令)蜘蛛的爬行!

关于网站无法访问,还存在其他可能,比如网络运营商异常,即蜘蛛无法通过电信或者网通等服务商访问到网站;DNS异常,即蜘蛛无法正常解析网站IP,可能是地址错误,也可能是域名商封禁,遇到这种情况需要和域名商联系。还有的可能是网页的死链,比如当前页面已经失效或者出错等,可能部分网页已经批量下线,遇到这种情况,最好的方法是提交死链说明;如果是URL变更导致的旧的URL失效无法访问,最好设置301跳转,把旧的URL和相关权重过渡到新的页面来。当然,也可能是搜索引擎本身负荷过大,临时封禁。

针对已经抓取回来的数据,接着就是蜘蛛进行建库的环节。在这个环节里,搜索引擎会依据一些原则对链接的重要性进行判断。一般来说,判断的原则如下:内容是否原创,如果是,会获得加权;主体内容是否是鲜明的,即核心内容是否突出,如果是,会获得加权;内容是否丰富,如果内容非常丰富,会获得加权;用户体验是否好,比如页面比较流畅、广告加载少等,如果是,会获得加权等。

因此,我们在网站日常运营过程中,需要坚持如下几个原则。

(1)不要抄袭。因为独特的内容是所有搜索引擎公司都喜欢的,互联网鼓励原创。很多互联网公司希望通过大量采集网络内容来组织自己的网站,从SEO角度来说,其实是不可取的行为。

(2)在网页内容设计的时候,要坚持主题内容突出,就是要让搜索引擎爬过来就能知道网页要表达的内容是什么,而不是在一堆内容里去判断网站到底是做什么业务的。主题不突出,在很多经营混乱的网站里有典型案例,比如有的小说网站,800字的一章切分到8个页面,每个页面大概100字,页面其余地方都是各种广告、各种无关内容信息。还有的网站,主体内容是一个frame框架或者AJAX框架,蜘蛛能爬到的信息都是无关内容。

(3)丰富的内容,即内容信息量大,内容的展示模式多样化。广告适当就是少嵌入广告,不要打开网页满屏都是花花绿绿的广告。因为广告加载时间计算在页面整体加载时间内,如果广告加载时间过长,导致页面无法完全加载,就会造成页面空而短。同时,针对大量广告影响用户体验方面,百度于2013年5月17日发布公告,宣称针对低质量网页推出了“石榴算法”,旨在打击含有大量妨碍用户正常浏览的恶劣广告的页面,尤其是弹出大量低质广告、存在混淆页面主体内容的垃圾广告的页面。目前部分大型门户网站从营收的角度考虑,还是悬挂大量的广告,作为SEO人员,需要考虑这个问题。

(4)保持网页内容的可访问性。有些网页承载了很多的内容,但是使用JS、AJAX等方式进行呈现,对搜索引擎来说是无法识别的,这样就造成网页内容空而短,使网页的评级大大下降。

此外,在链接的重要程度方面,还有两个重要的判断原则:从目录层级来说,坚持浅层优先原则;从内链设计来说,坚持受欢迎页面优先原则。

所谓浅层优先,即搜索引擎在处理新链接、判断链接重要性的时候,会优先考虑URL更多的页面,即从URL组织上离首页域名更近的页面。因此,SEO在做重要页面优化的时候,一定要注意扁平化的原则,尽量缩短URL的中间环节。

既然浅层优先,那么是否可以把所有的页面平铺到网站根目录下,从而选到最好的SEO效果?肯定不是,首先,优先是一个相对的概念,如果把所有的内容都放在根目录下,就无所谓优先了,重要的内容和不重要的内容没有任何区分。另外,从SEO角度来说,URL抓取后还用来分析网站的结构,通过URL的组成,大致判断内容的分组,SEO人员可以通过URL的组成来完成关键词和关键词网页的组织。

比如www.abc.com/jiaoyu/ 可能这个组下的内容都是与教育相关的,如www.abc.com/jiaoyu/1.html。www.abc.com/lvyou/ 可能这个组下的内容都是与旅游相关的,如www.abc.com/lvyou/1.html。

目前在站内的受欢迎程度主要从以下指标反映出来。

● 站内导向该页面的内链数量。

● 站内通过自然浏览行为到达该页面的PV。

● 该页面的点击流失率。

因此,从SEO角度来说,如果你需要快速提高一个页面的搜索排名,可以从受欢迎程度方面做一些工作,如下。

● 多从其他页面做导向该页面的锚文本,特别是高PR页面。

● 给该页面取一个吸引人的标题,引导更多自然浏览用户单击链接到达该页面。

● 提高页面的内容质量,降低页面的流量率。

1.3.6 页面收录工作列表

网页收录是SEO工作的核心之一,尽量提高网页的收录,是SEO日常工作的重点。为了提高网页的收录可能性,需要做如下的工作。

首先为网站设置一个Sitemap文件。网站的Sitemap文件就像生活中的地图一样,告诉蜘蛛网站有哪些重要的文件,获取这些文件的路径在哪里。关于Sitemap的制作可以查阅本书有关Sitemap的章节。

制作好Sitemap文件,可以把Sitemap文件上传到网站,一般放在网站的根目录下。下一步就是把“地图”提交给搜索引擎,让蜘蛛顺着“地图”过来。关于如何提交Sitemap给搜索引擎,每个搜索引擎的做法有一些差别,但是一般要求注册一个搜索引擎的站长账号,然后验证网站属于你以后,在站长管理板块有一个提交Sitemap的区域,直接提交网站Sitemap的URL就可以了,蜘蛛会顺着提交的URL爬到网站页面来。

除了提交Sitemap,为了促进收录,在网站内部设置良好的内链也非常关键。网站内部的结构就像一棵纵向的大树,不断向下植根、发散。如果页面没有良好的内链,蜘蛛就无法从一个页面爬到另外一个页面,即网站存在很多“孤岛”,搜索引擎根本无法发现这些“孤岛”的存在,也就无法把这些页面收录到索引库中来。因此,设法避免“孤岛”页面的存在,对于收录来说,是一项非常重要的工作。另外,部分良好的内链其实起到一种锚文本的作用,对于提升关键词的排名是非常重要的。

蜘蛛在爬行网页的过程中,遇到页面异常的情况,比如因为服务器原因无法访问或者页面已经不存在,会返回提示,SEO人员需要分析这些反馈信息,尽量修复导致蜘蛛无法正常爬行进而收录页面的各种异常。

1.3.7 页面收录分析

收录分析是对网站的页面收录进行一个系统的分析,通过分析收录比例,可以看到SEO的空间。比如页面数量是100,而收录页面是5%,那么收录比例5%,即100个页面只有5个页面被搜索引擎收录,起不到SEO的作用,这个情况就非常不乐观。反之,如果页面数量是100,而收录页面是80%,意味着在100个页面中,被搜索引擎收录的页面总数已经达到80个,收录状态就比较理想。

收录分析可以按照两种方式进行,第一种是按照URL的层级进行分析,第二种是按照频道进行分析。

按照URL的层级进行分析的方式,如表1-4所示。

表1-4 按照URL层级对页面收录数据进行统计

按照频道的方式进行分析的方式,如表1-5所示。

表1-5 按照频道对页面收录数据进行统计

按频道进行分析,一般要求每个频道下的URL是唯一的,而且和别的频道URL不重合,这样分析出来的结果才比较精准。比如新闻频道下的所有页面都是/news/下的页面,而且整个网站其他页面没有在/news/下的页面。如果遇到一个频道下有多个URL模式,只能通过列举方法,统计每个频道下的URL规律,然后把相关页面进行汇总计算得到分析结果。

1.3.8 蜘蛛抓取分析

蜘蛛抓取分析是对蜘蛛爬行网站的页面的行为进行分析,目的是分析蜘蛛爬行的网页占网页实际数量的百分比,用于检测网站内链的连通性和洞悉蜘蛛的爬行规律。蜘蛛爬行一般按照URL的层级进行分析,如表1-6所示。

表1-6 蜘蛛爬行分析