搜索引擎会按照某个规律定期的来抓取网站的内容,其抓取你网站的频率一般和网站的更新速度有关,如果网站内容更新频繁,那么网络蜘蛛也会频繁的访问网站。
以自己的博客为例,有段时间,博客的更新频率在3天左右发表一篇博文的那段时间里,查看apache的日志,发现google搜索引擎每天大概会访问5次左右;同时我在google Reader(谷歌阅读器)里订阅自己的博客,每次文章发布后,大概在若干个小时内就会出现在阅读器里面。
后来有段时间,文章更新频率变少了,很久才更新一篇。就会发现,google爬虫的访问频率变低了,同时博文在阅读器里出现的时间变久了,甚至发布两天后都无法在阅读器中看到更新。
那么如何让内容及时的被搜索引擎收录呢?其中一个办法就是不停的更新你的网站内容,显然这对一般个人博主来说有难度。另一个方法就是每当我们发表了文章后自己去通知搜索引擎。
Update Services(更新服务)
wordpress中的更新服务是一种让别人知道你的博客有更新的工具。在你每次创建或者更新博客时通过XML-RPC ping会让WP自动的通知给一些流行的更新服务商(如Technorati,Sphere,rssfeeds这些内容聚合网站)。相应的更新服务商会处理ping并更新他们的索引。这样别人再浏览更新服务商网站时便能看到你的博客更新。
简单的说,就是每当你发布文章后,wordpress就会自动的向预先设定好的地址发送消息,而这些地址有些就是搜索引擎提供的服务,通过这样的方法来主动要求搜索引擎抓取更新内容。
在wordpress的控制台,“设置->撰写”菜单下。有一个“更新服务”的选项,下面有一个多行文本输入框,文本框的上面有一行注解:
当您发表一篇新文章时,WordPress 将会向下面的站点发出通告。更多关于“更新服务”的信息,请查看 Codex 文档。一行一个通告服务的 URL。
在文本框里输入以下内容:
http://ping.baidu.com/ping/RPC2
http://blog.youdao.com/ping/RPC2
http://blogsearch.google.com/ping/RPC2
这3行分别是百度、有道、谷歌的ping服务。当然ping服务远不止这三个。
通过这样设置后,在文章发布后第一时间,wordpress会通知他们。
设置完后,我们可以来看看效果。以apache日志为证据。
xx.xx.xx.xx - - [28/Jan/2012:13:48:17 +0000] "GET /blog/wp-includes/wlwmanifest.xml HTTP/1.1" 304 - "-" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Windows Live Writer 1.0)"
xx.xx.xx.xx - - [28/Jan/2012:13:56:26 +0000] "POST /blog/xmlrpc.php HTTP/1.1" 200 716 "-" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Windows Live Writer 1.0)"
66.249.67.21 - - [28/Jan/2012:14:02:51 +0000] "GET /blog/feed HTTP/1.1" 200 17120 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.67.21 - - [28/Jan/2012:14:02:52 +0000] "GET /blog/ HTTP/1.1" 200 11117 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.67.21 - - [28/Jan/2012:14:03:10 +0000] "GET /blog/2012/01/28/29213 HTTP/1.1" 200 6519 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
xx.xx.xx.xx - - [27/Jan/2012:15:16:09 +0000] "POST /blog/xmlrpc.php HTTP/1.1" 200 443 "-" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Windows Live Writer 1.0)"
220.181.108.117 - - [27/Jan/2012:15:57:38 +0000] "GET /robots.txt HTTP/1.1" 404 239 "-" "Baiduspider+(+http://www.baidu.com/search/spider.htm)"
209.85.238.100 - - [27/Jan/2012:16:03:48 +0000] "GET /blog/feed HTTP/1.1" 200 14516 "-" "Feedfetcher-Google; (+http://www.google.com/feedfetcher.html; 2 subscribers; feed-id=11704572731530923401)"
66.249.67.21 - - [27/Jan/2012:16:14:53 +0000] "GET /robots.txt HTTP/1.1" 404 239 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.67.21 - - [27/Jan/2012:16:35:43 +0000] "GET /blog/2012/01/08/29152 HTTP/1.1" 200 5474 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
可以发现,每次文章发布后,不久,谷歌和百度的网络爬虫便来抓取了该文章,其中一篇只发布了6分钟就被抓取。
华丽丽的分割线
就在本文发布后,三分钟后就发现有google爬虫来了,4分钟的时候发现百度的爬虫也来了。打开google reader,发现该文已经出现在了,收录时间和发布时间刚好相差3分钟。