一个网站随着时间的推移,在内容量逐渐增大的同时,难免会出现高度相似,甚至完全相同的内容页面。这些高度相似或者完全重复的内容,在搜索引擎优化中,是有百害而无一利的。在服务器环境条件允许、并且站长熟悉URL重写配置的情况下,可以做301规范页面URL,如果不具备这些条件的话,我们就可以使用本文中讲到的rel=”canonical”属性。
我们来举个例子:
对于一个网站来说,包含多个列有同组产品的网页很正常。例如,一个网页可能按字母表顺序显示产品,而其他网页则按照价格或评分显示相同产品。例如:
http://www.example.com/product.PHP?item=swedish-fish&trackingid=1234567&sort=alpha&sessionid=5678asfasdfasfd
http://www.example.com/product.PHP?item=swedish-fish&trackingid=1234567&sort=price&sessionid=5678asfasdfasfd
如果搜索引擎 知道这些网页的内容相同,他们可能只会将搜索结果的一个版本编入索引。他们的算法会选择认为可以最好地回答用户查询的网页。现在用户(我们的站长们)可以通过将 rel=”canonical” 属性添加到该网页非规范版本的 部分,为搜索引擎指定规范网页。添加此链接和属性可以让网站拥有者识别出哪些网页具有相同的内容,从而向 搜索引擎 提出建议:”在内容相同的所有网页中,此网页最有用。请将该网页排在搜索结果中靠前的位置。”
如何使用rel=”canonical”规范页面呢?
如果我们的认为重要的页面是http://www.example.com/product.PHP?item=swedish-fish,我们就可以在非规范页面中head里面添加下面的代码
<link rel=canonical href=http://www.example.com/product.PHP?item=swedish-fish/>
不过需要注意的是,canonical标签属性仅支持在同一个域名下有效,二级域名同样有效;但是不支持跨域名问题(即不同域名),涉及到不同顶级域名的请用301重定向