Google中rel="canonical"的相关解释和用法
转载原地址 http://blog.sina.com.cn/s/blog_673b01740100jxlz.html
近听到很多SEO 对在页面的规范版本用规范 URL 标签( canonical URL tag)时会有问题。很多人对于只有重复内容应该用 rel= “canonical” 属性而原始内容不需要的说法存在疑惑。下面深圳网站建设(我乐168设计室)结合Google官方说明就canonical属性做个详细的分析与说明。
什么是rel="canonical"?
规范网页是一组内容高度相似的网页的首选版本,rel="canonical"属性是一个让Google知道在当前网站中的众多重复或高度相似网页中,哪一个页面才是站长想让他抓取收录的页面,从功能上来讲,可以理解为301永久重定向的辅助功能。
为什么要用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
在以前Google会经过自己的判断选择,如果认为这些路径是重复内容,则会选择其中一个页面来抓取,但是这个页面并不一定是站长最想被收录的。现在站长可以通过将
<link> 元素和 rel="canonical" 属性添加到这些路径不规范的页面的 <head>
区域来为搜索引擎指定规范网页。添加此链接和属性就等于向Google
提出建议:“在内容相同的www.wl168.com所有网页中,此网页最有用。请将该网页排在搜索结果中靠前的位置”。
如何指定规范网页?
要指定指向网页http://www.example.com/product.php?item=swedish-fish
的规范链接,请按以下形式创建 <link> 元素:
<link rel="canonical"
href="http://www.example.com/product.php?item=swedish-fish"/>
将上述链接复制到该网页所有非规范版本的
<head> 部分
如
http://www.example.com/product.php?item=swedish-fish&sort=price。
如果您在
http://www.example.com/product.php?item=swedish-fish 和
https://www.example.com/product.php?item=swedish-fish 上都发布了内容,则可以指定该网页的规范版本。创建
<link> 元素:
<link rel="canonical"
href="http://www.example.com/product.php?item=swedish-fish"/>
将上述链接添加到
https://www.example.comproduct.php?item=swedish-fish 的 <head>
部分。这样Google在抓取您网站页面时,就会认为这个页面才是规范页面。
转载 https://blog.gtwang.org/web-development/google-canonical-link-setup-after-changing-url/
标准网址使用教学 , 让Google搜寻呈现正确的网站
這裡介紹如何設定標準網址(canonical link),讓自己網站可以在 Google 搜尋結果上呈現正確的網址,達到搜尋引擎最佳化的效果。
在一個網站中使用不同的網址來呈現同一個頁面的內容是很常見的情況,舉例來說,有些網頁會有閱讀用與列印用兩種網址,這樣的設計可以讓使用者更便利,但是對於網路搜尋引擎(如 Google 等)而言,可能會無法判別那一個網址才是最正式的網址,如果在搜尋結果中顯示了列印用的版本就不是很恰當。
Google 標準網址標示
Google 官方為了解決這種問題,提供了標準網址的標示方式,只要在 <head> 區段加入 canonical link 的設定,就可以讓 Google 搜尋引擎呈現適當的結果:
<link rel="canonical" href="http://blog.gtwang.org/web-development/google-canonical-link-setup-after-changing-url/" />
我們可以在所有版本的網頁中(閱讀用與列印用的等等)都加上這一行,這樣 Google 搜尋引擎在顯示搜尋結果時,如果發現這個網頁內容有多個網址可選擇時,就會以這裡標示的網址為準。
使用 JavaScript 設定標準網址
由於 canonical link 的設定一定要放在 <head> 區段才會生效,如果您的網站環境無法讓您直接修改 <head> 區段的 HTML 碼,可以改用 JavaScript 的方式來加入 canonical link:
<script>
$('head')
.append('<link rel="canonical" href="http://blog.gtwang.org/web-development/google-canonical-link-setup-after-changing-url/" />');
</script>
這段 JavaScript 可以放在 <body> 中的任何地方,他的作用是在網頁載入時,使用 JavaScript 在 <head> 區段中增加一行 canonical link 設定,其中 href 的屬性請改為自己要指定的網址。
由於 Google 搜尋引擎在解析網頁時也會一併解析 JavaScript 程式碼,所以對於 Google 搜尋引擎而言我們可以使用這樣的方式來處理。
如果您的網頁原本就已經有 canonical link 的設定了,可以改用下面這樣的作法,修改 <link> 的 href 的屬性:
<script>
$('link[rel="canonical"]')
.attr('href', 'http://blog.gtwang.org/web-development/google-canonical-link-setup-after-changing-url/');
</script>
Google 上面对它的解释
https://support.google.com/webmasters/answer/139066?hl=en
Google中rel="canonical"的相关解释和用法的更多相关文章
- IT蓝豹强烈推荐:符合1-2年工作经验,开发中的难点及相关优化:
IT蓝豹强烈推荐:符合1-2年工作经验,开发中的难点及相关优化: IT蓝豹 ------------------> sqlite数据库版本升级 1.sqlite升级步骤: 1.自己写一个类继承自 ...
- Java进阶(十五)Java中设置session的详细解释
Java中设置session的详细解释 简单通俗的讲session就是象一个临时的容器,用来存放临时的东西.从你登陆开始就保存在session里,当然你可以自己设置它的有效时间和页面,举个简单的例子: ...
- lr 中cookie的解释与用法
Loadrunner 中 cookie 解释与用法loadrunner 中与 cookie 处理相关的常用函数如下: web_add_cookie(): 添加新的 cookie 或者修改已经存在的 c ...
- DataGridView中DataGridViewComboBoxColumn的一些相关应用(一)让其值改变时触发事件-转
转自 https://maodaili.de/mao.php?u=a%2FMrbEvUE8PnCuc7FrhJi0Rqd3kmOBHPZUbcJ1c2hbJUK0RYWpAf4lhIOddItP%2 ...
- x264中重要结构体参数解释,参数设置,函数说明 <转>
x264中重要结构体参数解释http://www.usr.cc/thread-51995-1-3.htmlx264参数设置http://www.usr.cc/thread-51996-1-3.html ...
- 图像处理中的数学原理具体解释21——PCA实例与图像编码
欢迎关注我的博客专栏"图像处理中的数学原理具体解释" 全文文件夹请见 图像处理中的数学原理具体解释(总纲) http://blog.csdn.net/baimafujinji/ar ...
- Wireshark中的一些SNMP相关的过滤器
Wireshark中的一些SNMP相关的过滤器 转自 http://linmingren2003.blog.163.com/blog/static/567510032011419825097/ 由 ...
- 图像处理中的数学原理具体解释20——主成分变换(PCA)
欢迎关注我的博客专栏"图像处理中的数学原理具体解释" 全文文件夹请见 图像处理中的数学原理具体解释(总纲) http://blog.csdn.net/baimafujinji/ar ...
- OC中并发编程的相关API和面临的挑战
OC中并发编程的相关API和面临的挑战(1) 小引 http://www.objc.io/站点主要以杂志的形式,深入挖掘在OC中的最佳编程实践和高级技术,每个月探讨一个主题,每个主题都会有几篇相关的文 ...
随机推荐
- bzoj1563
P<=10一开始是吓死我了 后来想到这就是一个经典的决策单调性解决1d1d动态规划的题目 像决策单调性完全可以打表找规律,这里有一篇严谨的证明https://www.byvoid.com/blo ...
- UVa 1475 (二分+半平面交) Jungle Outpost
题意: 有n个瞭望塔构成一个凸n边形,敌人会炸毁一些瞭望台,剩下的瞭望台构成新的凸包.在凸多边形内部选择一个点作为总部,使得敌人需要炸毁的瞭望塔最多才能使总部暴露出来.输出敌人需要炸毁的数目. 分析: ...
- Java [leetcode 2] Add Two Numbers
问题描述: You are given two linked lists representing two non-negative numbers. The digits are stored in ...
- 【轻院热身赛】级数求和、进制转换、candy
[题目链接:级数求和] Problem A: 级数求和 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 409 Solved: 240 SubmitSt ...
- java运用FFMPEG视频转码技术
基于windows系统安装FFMPEG转码技术 http://wenku.baidu.com/link?url=z4Tv3CUXxxzLpa5QPI-FmfFtrIQeiCYNq6Uhe6QCHkU- ...
- 国外主流PHP框架比较
最近简单的使用了目前在国内用的比较多的几个主流国外PHP框架(不包括国内框架),大致对这些框架有个直观上的感受,简单分享一下,对于哪些做框架选型的时候,权当一个参考. 主要参考的框架包括:CodeIg ...
- 使用IP欺骗Loadrunner并发测试小结
测试要求: 在本次测试中,我需要并发50个User,每一个User占用一个独立的IP,并且只执行一次脚本.脚本中发起两个请求,其中第一次请求返回200后才执行第二个请求.使用win7 OS. ...
- 使用k-means对3D网格模型进行分割
使用k-means对3D网格模型进行分割 由于一些原因,最近在做网格分割的相关工作.网格分割的方法有很多,如Easy mesh cutting.K-means.谱分割.基于SDF的分割等.根据对分割要 ...
- LeetCode题解——Integer to Roman
题目: 将整数转换为罗马数字.罗马数字规则可以参考: 维基百科-罗马数字 解法: 类似于进制转换,从大的基数开始,求整数对基数的商和余,来进行转换. 代码: class Solution { publ ...
- C++ 我想这样用(四)
嗯,已经是第四篇了,这篇起我就要开始细说语法了,不过在那之前再次申明下主旨:"C++我想这样用" 系列文案是为C程序员打造的,不是C++程序员. 我的终极目标是:让那些觊觎面向对象 ...