转载原地址 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"的相关解释和用法的更多相关文章

  1. IT蓝豹强烈推荐:符合1-2年工作经验,开发中的难点及相关优化:

    IT蓝豹强烈推荐:符合1-2年工作经验,开发中的难点及相关优化: IT蓝豹 ------------------> sqlite数据库版本升级 1.sqlite升级步骤: 1.自己写一个类继承自 ...

  2. Java进阶(十五)Java中设置session的详细解释

    Java中设置session的详细解释 简单通俗的讲session就是象一个临时的容器,用来存放临时的东西.从你登陆开始就保存在session里,当然你可以自己设置它的有效时间和页面,举个简单的例子: ...

  3. lr 中cookie的解释与用法

    Loadrunner 中 cookie 解释与用法loadrunner 中与 cookie 处理相关的常用函数如下: web_add_cookie(): 添加新的 cookie 或者修改已经存在的 c ...

  4. DataGridView中DataGridViewComboBoxColumn的一些相关应用(一)让其值改变时触发事件-转

    转自  https://maodaili.de/mao.php?u=a%2FMrbEvUE8PnCuc7FrhJi0Rqd3kmOBHPZUbcJ1c2hbJUK0RYWpAf4lhIOddItP%2 ...

  5. x264中重要结构体参数解释,参数设置,函数说明 <转>

    x264中重要结构体参数解释http://www.usr.cc/thread-51995-1-3.htmlx264参数设置http://www.usr.cc/thread-51996-1-3.html ...

  6. 图像处理中的数学原理具体解释21——PCA实例与图像编码

    欢迎关注我的博客专栏"图像处理中的数学原理具体解释" 全文文件夹请见 图像处理中的数学原理具体解释(总纲) http://blog.csdn.net/baimafujinji/ar ...

  7. Wireshark中的一些SNMP相关的过滤器

    Wireshark中的一些SNMP相关的过滤器 转自 http://linmingren2003.blog.163.com/blog/static/567510032011419825097/   由 ...

  8. 图像处理中的数学原理具体解释20——主成分变换(PCA)

    欢迎关注我的博客专栏"图像处理中的数学原理具体解释" 全文文件夹请见 图像处理中的数学原理具体解释(总纲) http://blog.csdn.net/baimafujinji/ar ...

  9. OC中并发编程的相关API和面临的挑战

    OC中并发编程的相关API和面临的挑战(1) 小引 http://www.objc.io/站点主要以杂志的形式,深入挖掘在OC中的最佳编程实践和高级技术,每个月探讨一个主题,每个主题都会有几篇相关的文 ...

随机推荐

  1. Web内容管理系统 Magnolia 启程-挖掘优良的架构(3)

    Author and Public instances 第一个关键观念:instance-实例.每一个项目都必须至少有一个Author实例和至少一个Public实例.下面将告诉你为什么: 基本概念:J ...

  2. A06_RelativeLayout的属性设置

    设有两个控件one和two,以控件one为基准.由于代码比较简单就不贴了,直接上效果图. 一.第一组:将控件two放在控件one的上.下.左.右.开始.结束. android:layout_below ...

  3. 启动PL/SQL Developer 报字符编码不一致错误 Database character set (AL32UTF8) and Client character set (ZHS16GBK) are different. Character set conversion may cause unexpected results. Note: you can set the client

    今天写hibernate时候遇到一些异常 代码: 出现异常情况: 出现以上原因是Session关闭 如果不是使用的SessionFactory.getSession()来获得Session. 而是使用 ...

  4. 石子合并(四边形不等式优化dp) POJ1160

    该来的总是要来的———————— 经典问题,石子合并. 对于 f[i][j]= min{f[i][k]+f[k+1][j]+w[i][j]} From 黑书 凸四边形不等式:w[a][c]+w[b][ ...

  5. UVa 11584 Partitioning by Palindromes【DP】

    题意:给出一个字符串,问最少能够划分成多少个回文串 dp[i]表示以第i个字母结束最少能够划分成的回文串的个数 dp[i]=min(dp[i],dp[j]+1)(如果从第j个字母到第i个字母是回文串) ...

  6. NoSQL 数据库系统对比

    虽然SQL数据库是非常有用的工具,但经历了15年的一支独秀之后垄断即将被打破.这只是时间问题:被迫使用关系数据库,但最终发现不能适应需求的情况不胜枚举. 但是NoSQL数据库之间的不同,远超过两 SQ ...

  7. highcharts 饼图显示数据比例如何保留二位小数

    var NewPerCent=parseFloat(NewPerCent.toString()).toFixed(2);return '<b>'+ this.point.name +'&l ...

  8. codevs 1197 Vigenère密码

    开始做NOIP啦.. #include<iostream> #include<cstdio> #include<cstring> #include<algor ...

  9. HDU 4638 Group ★(树状数组)

    题意 询问一段区间里的数能组成多少段连续的数. 思路 先考虑从左往右一个数一个数添加,考虑当前添加了i - 1个数的答案是x,那么可以看出添加完i个数后的答案是根据a[i]-1和a[i]+1是否已经添 ...

  10. HDU 4612 Warm up (边双连通分量+DP最长链)

    [题意]给定一个无向图,问在允许加一条边的情况下,最少的桥的个数 [思路]对图做一遍Tarjan找出桥,把双连通分量缩成一个点,这样原图就成了一棵树,树的每条边都是桥.然后在树中求最长链,这样在两端点 ...