SEO之网站结构优化(十-网址规范化2)

初创企业搭建网站的朋友看1号文章;想学习云计算,怎么入门看2号文章谢谢支持:
1、我给不会敲代码又想搭建网站的人建议
2、“新手上云”能够为你开启探索云世界的第一步

博客:阿幸SEO~探索搜索排名之道


4、301转向

1.什么是301转向
301转向(或叫301重定向、301跳转)是用户或蜘蛛向网站服务器发出访问请求时,服务器返回的HTTP数据流中头信息(header)部分状态码的一种,表示本网址永久性转移到另一个地址。
其他常见的状态码还包括:

  • 200表示一切正常
  • 404网页不存在
  • 302临时性转向
  • 500内部程序错误

网址转向还有其他方法,如302转向、JavaScript转向、PHP/ASP/CGI程序转向、Meta Refresh等。除了301转向外,其他方法都是常用的作弊手法。虽然方法本身没有对错之分,但被作弊者用多了,搜索引擎对可疑的转向都很敏感。

2.301转向传递杈重
网页A用301重定向转到网页B,搜索引擎可以肯定网页A永久性改变地址,或者说实际上不存在了,搜索引擎就会把网页B当做唯一有效目标。这是搜索引擎唯一推荐的不会产生怀疑的转向方法,更重要的是,网页A积累的页面权重将被传到网页B。
所以,假定http://www.domainname.com是选定的规范化网址,下面几个网址:

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

都做301转向到http://www.domainname.com,搜索引擎就知道 http://www.domainname.com是规范化网址,而且会把上面列的网址权重传递集中到规范化网址。
目前Google 会传递大部分权重,但不是百分之百权重。百度会传递所有权重。Google对301的识别、反应、完成权重传递,需要1~3个月时间。百度对301处理则比较保守,新旧 URL 会同时存在于数据库很长时间,经常看到做了301转向一年的URL还出现在百度结果中。

3.怎样做301转向
如果网站使用 LAMP (Linux+Apache+MySQL+PHP)主机,可以使用daccess文件做301转向。.htaccess是一个普通文字文件,用Notepad等文字编辑软件创建和编辑,存在网站根目录下。.htaccess文件中的指令用于目录特定操作,如密码保护、转向、错误处理等。
比如把页面/old.htm 301转向到 http://www.domain.com/new.htm,可以在.htaccess 文件中放上这个指令:
redirect 301/old.htm http://www.domain.com/new.htm

redirect permanent /old.htm http://www.domain.com/new.htm
把所有不带www(http://domain.com)版本的网址 301转向到带www 的版本(http://www.domain.com),包括:
http://domain.com/about.htm
转到
http://www.domain.com/about.htm

http://domain.com/dir/index.htm
转到
http://www.domain.com/dir/index.htm
等,还要用到 mod_rewrite 模块,.htaccess 文件指令是:

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST}^ domain.com (NC)
RewriteRule ^(. *)$ http://www.domain.com/$1 (L,R=301)

如果网站用的是Windows主机,可以在控制面板做301转向设定。
纯静态HTML页面无法做301转向。在HTML里能做JavaScript或Meta Refresh 转向,但不能做301转向。HTML 一被读取,就已经返回200 Ok 状态码了。
如果页面是ASP或PHP,还可以做301转向。
ASP 代码:

<&@ Language=VBScript 8>
<%
Response.Status="301 Moved Permanently" Response.AddHeader "Location","
http://www.domain.com"
>

PHP代码:

Header("HTTP/1.1 301 Moved Permanently");
Header{ "Location: http://www.domain.com");
?>

4.301转向的其他用途
除了解决网址规范化问题,还有很多需要做301转向的情形。比如,为保护版权,公司拥有不同TLD的多个域名:

  • company.com
  • company.net
  • company.org
  • company.com.cn
  • company.cn

为避免造成大量复制内容,应该选定一个为主域名,如 company.com,其他域名做301转向到company.com.
或者公司注册了全称域名longcompanyname.com,但太长,也注册了缩写域名方便用户记住Icn.com,其中一个做主域名,另一个301转向到主域名。
网站改版也经常需要用到301转向,如页面删除、改变地址、URL命名系统改变等。
动态URL静态化也可能要做301,将旧的、动态的URL做301到新的、静态的URL。


5、Canonical 标签

2009年2月,Google、雅虎、微软共同发布了一个新的标签canonical tag,用于解决网址规范化问题。
简单说,就是在 HTML 文件的头部加上这样一段代码:

  <link rel="canonical" href-"http://www.example.com/product.php?item=swedish-fish"/>

意义就是这个网页的规范化网址应该是:
http://www.example.com/product.php?item=swedish-fish
下面这些URL都可以加上这段canonical标签:
http://www.example.com/product.php?item=swedish-fish&category=gummy-candy
http://www.example.com/product.php?item=swedish-fish&trackingid=1234&sessionid=5678
这些URL 的规范化网址就都成为:
http://www.example.com/product.php?item=wedish-fish
Canonical标签相当于一个页面内的301转向,区别在于用户并不被转向,还是停留在原网址上,而搜索引擎会把它当做是301转向处理,把页面权重集中到标签中指明的规范化网址上。
另外有几个细节需要注意:

  • 这个标签只是一种建议或暗示,而不是指令,它不像 robots 文件那样是个指令。
    所以搜索引擎会在很大程度上考虑这个标签,但并不是百分之百。搜索引擎还会考虑其他情况来判断规范化网址。这也防止站长有可能把网址弄错。
  • 标签既可以使用绝对地址,也可以使用相酎地址。通常使用绝对地址比较保险。
  • 指定的规范化网址上的内容,与其他使用这个标签的非规范化网址内容可以有一些不同,不一定完全一样。比如电子商务网站上多按价格、时间、尺寸升降排序,生成的URL
    全都不一样,但内容大体相同,只有细小区别,就可以使用这个标签。
  • 指定的规范化网址可以是不存在页面,返回 404,也可以是还没有被收录的页面。 但是不建议这么做,别没事找事。
  • 这个标签可以用于不同域名之间。

有些网站由于技术限制不能做301转向,canonical 标签就显得非常灵活,不需要任何特殊服务器组件或功能,直接写在页面HTML中就可以了。
目前Google、雅虎、必应都支持 canonical 标签,不过雅虎和必应收录页面后做出反应的时间非常长。百度还不支持canonical标签。

(未完待续。。。点击我的主页可翻看以前的文章)

图片来源网络

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值