2009年2月份,谷歌、雅虎和live search 三家搜索引擎宣布支持Link的一個新屬性Canonical,其目的是幫助網站管理員們,解決網站內容存在多個版本時,指定規范鏈接,幫助解決內容重復收錄問題。
其標准用法是:
Html代碼 :
<link rel="canonical" href="http://www.sem.cm/index.html" />
一般推薦使用絕對地址,因為使用canonical目的就是為規范鏈接,所以采用絕對地址是最妥當的,但是要注意的是:不能跨域名指向,也就是不能指向不同的域名,這點要謹記。
Canonical標簽是做什麼用的?
canonical標簽就是告訴搜索引擎哪個頁面是權威頁面。以我的理解,Canonical標簽大致的作用如下。
第一,使用Canonical標簽使網址規范化。
第二,避免內容重復頁面,搜索引擎收錄更准確。
第三,集中傳遞頁面權重。
Canonical鏈接標簽只能作用於同一個域名所在的網址,不能作用於不同域名上的重復內容。如果是跨站,可以使用301重定向。
網址不規范,會降低頁面權重,是因為搜索引擎會認為頁面內容有重復。做法是將這些不規范的網址,指向同一個頁面。
假設網站上有如下網址所在頁面內容是相同的:
http://www.sem.cm/products
http://www.sem.cm/products?sessionid=123456
http://www.sem.cm/products?trackingid=feed
可以在head meta部分加入如下代碼:
<link rel="canonical" href="http://www.sem.cm/products" />
後兩個頁面的內容會被搜索引擎認為是重復內容,就是告知搜索引擎把相關的搜索信號都傳遞到第一個網址。
這樣任何含有這個標簽的網頁,不管它最終的URL是什麼,搜索引擎最終都會只收錄 canonical標簽指定的那個頁面。
這樣做的好處是避免多個URL的存在,分散了頁面權重,更加利於排名。
用好canonical標簽,下面幾點也是需要認識的。
第一,該鏈接標簽可用於定義相對地址,也可用於定義絕對地址。但為了保險起見,建議使用絕對地址。
第二,如果使用了canonical鏈接標簽的頁面在整個網站中並無重復內容的頁面,也無需擔心,該標簽暫時會被搜索引擎“束之高閣”。
第三,該鏈接具有可傳遞性。假如你在網址A中將網址B指定為首選地址,而在網址B中又將網址C指定為首選地址,那麼搜索引擎會認為網址C才是A和B的首選頁面。這種情況有時候在網址重定向中會發生。
第四,一個網頁鏈向了有canonical標簽的頁面,會被當作像301轉向到這一頁的canonical頁。
第五,一個頁面可以用rel=canonical指向自己,一個網站的所有頁面可以都有rel=canonical。在使用rel=canonical完全不用擔心,只用在使用時指對了頁面。
當然canonical不是萬能的 ,對於大型重復頁面出現的商城,例如淘寶,京東這些,要解決完美的url規范都不是那麼容易的。