通常为了便于各个搜索引擎抓取和收录我们的网站内容,我们需要给搜索引擎提交我们的网站页面链接。就百度搜索引擎来说,我们可以通过api主动提交,这种方式是将需要提交的url全部写到一个txt文档里面,然后push到百度指定的位置。还有一个全球通用的网站链接提交方式,就是使用sitemap文件的形式来提交网站,也即是在服务器某个位置放上sitemap文件,然后告诉搜索引擎,那么搜索引擎就可以自己来读取内容,sitemap很容易理解,就是站点地图的意思了。sitemap一般有三种格式:txt文本格式、xml格式、HTML格式。原则上可以选择任意一种格式的sitemap,但是实际上是有优劣之分的。

txt文本格式sitemap

其实就是一个txt记事本文件,百度是支持这种格式的站点地图的,粗略研究了一下,国内几家搜索引擎都是能够支持的,但是国外搜索引擎就不一定支持了。每个sitemap.txt文件的最大添加链接数量是50000个,如果添加链接的行数多于这个数目,只能够再新建一个记事本文件来继续添加。也就是说站点地图这玩意,都是可以用多个文档来同时提交的。

txt格式的站点地图不建议使用,因为兼容性差,没办法设置多余的链接参数,灵活性也差。

html格式sitemap

html格式的sitemap用得很少,因为并没有显著的优点和便利性。一般不建议使用。

xml格式sitemap

xml格式的sitemap可以说是最普遍的,几乎都是用的这种格式,因为一方面所有搜索引擎都支持这种格式,并且我们可以给每个链接增加一些描述的属性值等等。灵活性很高,并且语义性非常清晰,对搜索引擎和站长都很友好。xml格式sitemap文件中一个简单的典型链接如下:

1
2
3
4
5
<url>
<loc>http://www.butterpig.top/blog/baidu-spider-justify/</loc>
<changefreq>always</changefreq>
<mobile:mobile type="pc,mobile"/>
</url>

loc表明了这个条目的具体的url,changefreq表明了这个url代表的页面的更新频率,mobile:mobile type=”pc,mobile”表明这是一个移动端和pc端都可以正常访问的自适应性页面。还有多种配置参数,但是这里没有用到,一般也不需要刻意的去用,因为搜索引擎有自己的判断逻辑,它会自己进行判断处理的。一个完整的xml配置条目如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="utf-8"?>
<!-- XML文件需以utf-8编码-->
<urlset>
<!--必填标签-->
<url>
<!--必填标签,这是具体某一个链接的定义入口,每一条数据都要用<url>和</url>包含在里面,这是必须的 -->
<loc>http://www.yoursite.com/yoursite.html</loc>
<!--必填,URL链接地址,长度不得超过256字节-->
<lastmod>2009-12-14</lastmod>
<!--可以不提交该标签,用来指定该链接的最后更新时间-->
<changefreq>daily</changefreq>
<!--可以不提交该标签,用这个标签告诉此链接可能会出现的更新频率 -->
<priority>0.8</priority>
<!--可以不提交该标签,用来指定此链接相对于其他链接的优先权比值,此值定于0.0-1.0之间-->
</url>
<url>
<loc>http://www.yoursite.com/yoursite2.html</loc>
<lastmod>2010-05-01</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
</urlset>

一般情况下完全没必要配置这么多属性,意义不大。单个xml格式sitemap文件的最大条目也是不超过50000个,单个文件不超过10M,这些限制条件有助于确保您的网络服务器不会因提供大文件而超载。

因此我们建议使用xml格式的sitemap来进行提交,优势会大得多。不过搜索引擎在读取了sitemap之后,并不保证一定会收录你提交的网页内容。