网址URL规范化(URL canonicalization)是近一年来在Google搜索结果中出现的一个很大的问题。它指的是搜索引擎挑选最好的URL网址作为真正网址的过程。举例来说,下面这几个URL一般来说指的是同一个文件或网页:

http://www.domainname.com

http://domainname.com

http://www.domainname.com/index.html

http://domainname.com/index.html

但是从技术上来讲,这几个URL网址都是不同的。虽然在绝大部分情况下,这些网址所返回的都是相同的文件,也就是你的主页。但是从技术上来说,主机完全可以对这几个网址返回不同的内容。

当搜索引擎要规范化网址时,搜索引擎需要从这些选择当中挑一个最好的代表。一般来说,你的主页应该是固定的,只有一个。但是有的时候,在很多网站上站长在链接回主页时,所使用的URL并不是唯一的。很可能在你的网站上,一会连到URL http://www.domainname.com,一会儿连到URL http://www.domainname.com/index.html 。

虽然这不会给访客造成什么麻烦,因为这些网址都是同一个文件,但是对Google来说却是造成了困惑,哪一个网址是你真正的主页呢?如果在你的网站上,不同的版本网址都大量出现,那么这两个URL可能都会被Google收录进数据库,这时就会造成复制内容网页。

所谓复制内容网页,指的是两个或多个网页的内容是相同或大部分相似的。很多时候,复制网页有可能是作弊手段。就算不是作弊手段的时候,搜索引擎通常也只会挑出其中一个返回搜索结果,而把其他的复制网页都排在最后面,以至于根本找不到。

当你的网站出现网址URL规范化问题的时候,就有可能造成被怀疑为复制网页,因而影响搜索引擎结果排名。

从Google的角度来说,他们正在发展所谓大爸爸数据中心基本架构,来解决包括URL规范化的问题。但谁知道能不能解决呢?

从站长的角度来考虑,你应该做两件事:

1)你的网站内部在链接到其他网页,尤其是主页时,只使用一种URL。不管是包含www或不包含www,你要由始至终只使用一个版本。这样搜索引擎也就明白哪一个是规范化的主页网址。

2)但是你没办法控制别的网站用哪一个网址连向你的主页。所以你应该在你的主机服务器上,把所有有可能成为主页网址的URL,做301重定向到你所选择的主页网址版本。也就是说,从下面这几个网址

http://domainname.com

http://www.domainname.com/index.html

http://domainname.com/index.html

都要做301重定向到这个网址

http://www.domainname.com

很重要的一点是,如果你的网站出现了URL规范化的问题,千万不能使用Google的网址删除反馈表,来要求删除其中的一个网址版本。比如说,你所要的是带有www的版本

http://www.domainname.com

你千万不能到Google的网站上填表,要求没有www的主页网址

http://domainname.com

被删除掉。因为那样做的话,你整个的域名有可能被删除6个月。

当然,除了包含www和不包含www的两个版本以外,还有其他类型的URL规范化问题。比如有的时候,搜索引擎会去掉或加上网址尾端最后的斜线。有的时候会尝试把大写字母换成小写字母,有的时候可能尝试去掉会话ID(session ID)等等,这些都有可能造成网址规范化问题。

URL网址规范化的更多相关文章

  1. 301重定向方法大全及SEO中网址规范化,看着不错先收下

    301重定向方法大全及SEO中网址规范化 现在大多数网站都存在一些内容相同但网址(URL)不一样的重复内容,这些重复的内容对于搜索引擎来说却可能被认为是复制网页,复制网页虽然不会被惩罚但因多个网址存在 ...

  2. 用 .htaccess 实现网址规范化

    网址规范化在 SEO 中是一个比较重要的环节,同时存在不同的网址版本,不但可能造成内容重复,还不能正确的集中权重.目前大多数网站,绑定的域名都有带 www 和不带两个版本,甚至很多网站同时绑定多个域名 ...

  3. js获取当前页面的url网址信息小汇总

    在WEB开发中,时常会用到javascript来获取当前页面的url网址信息,在这里是我的一些获取url信息的小总结. 下面我们举例一个URL,然后获得它的各个组成部分:http://i.cnblog ...

  4. js获取当前页面url网址信息

    js如何准确获取当前页面url网址信息 在WEB开发中,时常会用到javascript来获取当前页面的url网址信息,在这里是我的一些获取url信息的小总结. 下面我们举例一个URL,然后获得它的各个 ...

  5. js 获取当前页url网址信息

    转载地址:js如何准确获取当前页面url网址信息 摘录: 举例一个URL,然后获得它的各个组成部分:http://i.cnblogs.com/EditPosts.aspx?opt=1 1.window ...

  6. js准确获取当前页面url网址信息

    这篇文章主要为大家介绍了js准确获取当前页面url网址信息的多种方法,包括正则法.split拆分法等,需要的朋友可以参考下   在WEB开发中,时常会用到javascript来获取当前页面的url网址 ...

  7. [JavaScript] js获取当前页面url网址信息

    在WEB开发中,时常会用到javascript来获取当前页面的url网址信息,在这里是我的一些获取url信息的小总结. 下面我们举例一个URL,然后获得它的各个组成部分:http://i.cnblog ...

  8. JS 如何准确获取当前页面URL网址信息

    在WEB开发中,时常会用到javascript来获取当前页面的url网址信息,在这里是一些获取url信息的小总结. 下面我们举例一个URL,然后获得它的各个组成部分:http://i.cnblogs. ...

  9. js获取当前页面url网址等信息

    使用js获取当前页面的url网址信息. 1.设置或获取整个 URL 为字符串: window.location.href 2.设置或获取与 URL 关联的端口号码: window.location.p ...

随机推荐

  1. 人生要golang

    第一篇 : 初识golang 第二篇 : 下载及安装 未完待续 ............................................

  2. Android关闭USB的ADB调试和文件传输功能(禁用USB)【转】

    本文转载自:https://blog.csdn.net/jun4331247/article/details/51201825 通过设置系统属性(System Property)[persist.sy ...

  3. Oracle数据库设计规范建议

    Oracle数据库设计规范建议 1 目的 本规范的主要目的是希望规范数据库设计,尽量提前避免由于数据库设计不当而产生的麻烦:同时好的规范,在执行的时候可以培养出好的习惯,好的习惯是软件质量的很好的保证 ...

  4. Spring Cloud之Eureka自我保护环境搭建

    Eureka详解 服务消费者模式 获取服务 消费者启动的时候,使用服务别名,会发送一个rest请求到服务注册中心获取对应的服务信息,让后会缓存到本地jvm客户端中,同时客户端每隔30秒从服务器上更新一 ...

  5. BEM —— 源自Yandex的CSS 命名方法论

    原文链接: https://segmentfault.com/a/1190000000391762 人们问我最多的问题之一是在CSS类名中--和__是什么意思?它们的出现是源于BEM和Nicolas ...

  6. python练习_简单登录

    python练习_简单登录 需求: 做一个登录的小程序,验证用户与密码 要求登录三次错误后锁定 以下代码实现的功能与思路: 功能: 1.除admin以外的用户累计登录失败次数超过三次则锁定,此时需要管 ...

  7. 大话设计模式--状态模式 State -- C++实现实例

    1.状态模式: 当一个对象的内在状态改变时,允许改变其行为,这个对象看起来就像是改变了其类. 状态模式解决的是当控制一个对象状态转换的条件表达式过于复杂, 把状态的判断逻辑转移到表示不同状态的一系列类 ...

  8. C# 多服务器上传 示例

    图片服务器  带宽越来越不够用,还有当一台服务器的机房出问题的时候,不影响 整个web,以及 考虑网通电信访问服务器的 速度,所以考虑使用多台 图片 服务器 这个时候要求 图片服务器 内容是同步 的  ...

  9. 仿联想商城laravel实战---4、验证(lavarel的表单验证如何使用)

    仿联想商城laravel实战---4.验证(lavarel的表单验证如何使用) 一.总结 一句话总结: 验证规则和验证信息的数组:在控制器的方法中 1.注册页面中的用户名正确(比如是否重名,字段长度是 ...

  10. plsql点击不再提示后需重新提示

    工具--首选项---用户界面---选项---DSA对话框---内容如下 ;显示含有“不再显示这个信息”的对话框;你可以删除用于你要启用的信息的行 CharSetMismatch@RIM40=1Char ...