栏目头部广告

网站优化:网址规范化(URL canonicalization)

SEO网址定律:规范的网址书写方式,有利于提高网站主页权重。

网址规范化

1、出现不规范网址的原因

搜索引擎会自动挑选最合适的URL做为一个网站的网址。众所周知,我们打开IE在地址栏里输入网址,根据各人用户体验的习惯不同,输入的方式也不同。这就是会出现不规范的网址的原因。如:

l http://domain.com

l http://www.domain.com

l http://www.domain.com/

l http://www.domain.com/index.html

l https://www.domain.com(较少使用)

以上这五种常见的输入网址的方式,明眼能看出来其实是指向同一个页面:主页。

从技术上来说,在计算机处理时,每一个字符对应一个编码(详见计算机科学导论类书籍);而搜索引擎是把以上网址当成不同的地址来看待,虽然最终返回的都是主页。

现在简要分析一下以上网址的技术问题:

有没有带www,有什么不同?在DNS中,www是你要解析的主机名。在做域名解析时,会要你为域名:domain.com填写一个主机名,我们一般填:www 。当然,也可以填 bbs或者其它的诸如abcde等等。如果填,那么,主机返回的页面就不一样。对搜索引擎来说,这是两个不同的站点,两个不同的页面。两个都要计算PR值。

具例:http://www.tianya.cn和http://focus.tianya.cn在搜索引擎看来就是两个不同的站点。其中,http://www.tianya.cn的PR值为8,而http://focus.tianya.cn的PR值等于6。但从人为上判断,这其实是同一个站点。

另一个问题,带与不带index.html,对用户感觉没什么区别。但对蜘蛛说就感到比较晕:哪一个才是主页?蜘蛛到底该返回哪个页面?这种方法对蜘蛛不友好。

https是加密网址,可以理解为http的安全版,端口:443,采用SSL协议,详见《TCP/IP协议》有关书籍。如果和http同时存在也会被认为是不同的页面,搜索引擎会分别计算,从而降低了http://www.domain.com页面的权重。如:http://mail.139.com的PR值等于6,而https://mail.139.com的PR值为:n/a。

以上的不同的域名写法,造成的PR值的不同

所以,一个网址在推广时,网址的规范写法很重要。这直接影响到域名的权重。而不带www的域名,对搜索引擎很不友好。毕竟蜘蛛是程序,在不规范的网址中要挑一个出来做为规范的网址,不仅浪费主页的权重,而且还浪费蜘蛛的时间和网络带宽。要知道,蜘蛛一生气,后果很严重。

2、避免不规范网址降低网站首页权重

据估计,现在网络上的网址,不规范的写法近30%。在浪费资源,浪费带宽的同时,有可能搜索引擎选出的规范网址并不是站长想要的。对站长来说,多个不规范的URL链接的存在不但不利于排名,更是分散了主页的权重。不规范的影响了网站的收录不是好事,必须避免。

避免不规范网址,不管是新站还是老站,都是要长期跟进的一项工作。要有恒心才能见到效果。新站从一开始就注意到这点的话,一两年后,效果还是很明显的。具体如下:

l 新站在发展友链时,尽可能地要求对方规范书写网址,统一写法。而老站,应尽可能地修复不规范的友链。

l 内链中,首先自已要规范书写网址,文章发布时,也要规范书写网址。

l 谷歌管理工具中,将不带3w的网址以及其它不规范的写法定向为带3w的规范网址。

l 使用canonical标签。下节讨论。

l 制作sitemap文件,在sitemap文件里全部使用规范网址,以利蜘蛛爬行。

l 一些CMS中添加了许多文章,里面如有大量内链不规范,可在robots文件中禁止蜘蛛爬行,在修复后,再允许蜘蛛爬行。

l 无论网站是否有静态化的功能,在开发和对系统设置时要做到系统只产生规范网址。

l 设置.htaccess文件,用301重定向把其他URL重定向到规范网址。

以上提到的方法可混合使用,具体情况灵活处理。网址规范化是让站长和蜘蛛非常困扰的一个课题。需要站长长期坚持才能见效。

3、canonical标签与301重定向

在2009年,Google,雅虎,微软共同发布了一个新的标签:canonical tag,用于解决网址规范化问题。canonical标签有什么用?

1. 网址规范。

2. 传递、继承页面权重。

3. 重复页面精确重定向,利于蜘蛛收录。

注意,canonical标签只对同一域名下的网址有效,如果跨站,建议用301重定向。这就是canonical标签与301重定向的区别所在。

如下面所示网址的页面是相同的

http://www.domain.com/archives

http://www.domain.com/archives/123.html

http://www.domain.com/archives/234.html

那么我们可以在head meta部分加入如下代码:

这样是告诉搜索引擎:后两个页面的内容是重复内容,是同一个页面,就是告知搜索引擎把相关的搜索信号都传递到第一个网址。

这样一样所有含有这个标签的网页,不管它的URL是什么,搜索引擎最终都会只收录 canonical标签指定的那个页面,所有的权重也会在指定的这个页面上继承。这样,所有原本分散的权重都会集中传递在指定的这个页面上。

另外,使用canonical标签要注意以下几点:

1. 这个标签只是对搜索引擎起到参考和建议的作用,并不是像robots文件那样是个命令,就算是做了canonical标签,也不百分百保证是搜索引擎认可的规范网址,搜索引擎会智能地综合参考其他的因素进行判断。

2. 在canonical标签中,最好使用绝对地址,虽然可以使用相对地址。

3. 针对国内用户的网站特别注意,百度不支持这个标签。

4. canonical标签指定的网址可以是不存在的页面内容,如404页面。如果闲得没事干的话可以这么做。

5. 建议canonical标签在同一域名下使用。是否跨站,争议太大。

什么是301转向?301转向也叫301网址重定向,是用户或者搜索引擎在向服务器发出请求指令时,服务器返回HTTP头的一个信息(一个代码,如:301、404等),用来告诉用户或蜘蛛:原来的网址现在不用了,永远转向新启用的新网址。

301转向,能使新域名继承老域名的权重。

cmfu是起点的老域名,而qidian是新域名。

老域名cmfu.com用301转向新域名,权重也转向新域名。而老域名则被永远认为被转到qidian.com这个新域名上了。

做301域名转向,可以用.htaccess文件,JS代码(如国内某知名电信服务运营商,大家可以查看其JS代码),ASP代码、PHP代码。

现具例如下:

Redirect 301 /path/from/ file.html http://www.domain.tld/path/file.html

上面的代码加到.htaccess文件中,主要是告诉搜索引擎,以后所有到/path/from/ file.html的请求,都转到http://www.domain.tld/path/file.html上。301状态码,就是告诉蜘蛛,原来的页面被永远转走了。

前面我们提到,将所有不规范的不带3w的网址转到规范的网址上。这时就要打开.htaccess文件进行修改。我们打开一个网站的.htaccess文件,中文是我添加的注释:

##

##如果要使用复定向模块,这个选项必须是On

# if you want to use mod_rewrite, set this 'On'

RewriteEngine On

# the path to your site installation

RewriteBase /

# Maintenance Section - Uncomment the lines below according to your need

# Write below your client IP address (e.g.: 127.0.0.1)

# if you need to keep your web access during maintenance

#RewriteCond %{REMOTE_ADDR} !^127.0.0.1$

# Choose your way of closing the access to PMF:

# a. you can simply forbid access (HTTP 403 Error)

#RewriteRule ^(.*)$ underMaintenance.htm [F,L]

# b. return the user an explanation

#RewriteRule ^(.*)$ underMaintenance.htm [L]

##将所有不带3w的网址,转为带3w的规范网址。重定向代码须要写在所有的代码前面。

# url canonicalization

RewriteCond %{http_host} ^abcde.com [NC]

RewriteRule ^(.*)$ http://www.abcde.com/$1 [L,R=301]

##404错误页面

# 404 page

ErrorDocument 404 /404.html

使用301注意一点:HTML静态页面不支持。接下来看看在PHP中如何做301重定向代码:

Header(“HTTP/1.1 301 Moved Permanently”);

Header(“Location:http://www.domain.com”);

将上面的两行代码加到PHP代码中即可。

301重定向,还有以下用途:

l 多个域名如.cn,.net,.org,.cc等全部转向主域名.com。

l Domaina123b123c123d123e123.com可以转来短域名:doabcde.com

l 网站改版、URL命名系统改变。

l 动态化的URL转静态化的URL。

以上介绍了不规范网址产生的原因、处理方法,随着搜索引擎算法的更变,SEO的方法也不断更新。不担保所做的操作百分百有效。


西安天勤SEO博客(https://www.mindseo.cn)本博主拒绝假大空,崇尚实战派,鄙视高逼格,强调接地气QQ:359530923,重视基础,畅谈技巧,凝练思维的SEO营销推广学习平台!
这里,你将学习到满满的网络营销干货—SEO,推广引流,软文文案,营销模式等技巧,从SEO零基础到SEO入门再到SEO高级,可能你遇到的棘手问题都会在这里解决。
本站的文章为MindSEO原创文章,转载请注明出处西安天勤SEO网络营销MindSEO。
标签: URL优化
文章详情页广告

随便看看

这是广告