Chinaunix首页 | 论坛 | 博客
  • 博客访问: 52549
  • 博文数量: 21
  • 博客积分: 1410
  • 博客等级: 上尉
  • 技术积分: 187
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-27 13:11
文章分类
文章存档

2010年(21)

我的朋友

分类: 系统运维

2010-04-15 10:58:26

     最近自己心血来潮弄了个博客,由于不停的改themes,导致里面的标签被删掉,导致很多被搜索引擎收录的页面在访问时都显示404错误,该页面已经不存在了。给很多访客造成了困扰,在这里说声对不起了,也感谢你们及时提醒我,希望以后再访问的时候发现错误及时通知我,谢谢!

    话说回来,很多页面不能访问的确是个麻烦,这样会被访客低的信誉度,其实网站做的也是一个口碑。如是我就研究了一下,最终选择了用301重定向的方式,一一的把无法访问的页面定向到新页面。刚开始我也选择了404重定向,但这种有一个弊端,就是只能重定向到一个相同的页面,很多内容都不相关。所以我选择了301重定向,虽然工作量比较大点,但这样可以让人访问到需要的东西,对搜索引擎也是一种友好的方式。

      下面就来详细的介绍下301重定向:

一、301重定向介绍

       301 重定向也称301 转向,或者301 跳转。当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回HTTP 数据流,其中头信息(header)里包含某种状态码,301 重定向即状态码中的一种,表示本网页永久性转移到另一个地址。
其它常见的状态码还包括:200 一切正常,404 网页找不到,302 暂时转向,等等

二、为什么要做301 网址转向?
       除了前面介绍过的网址规范化问题外,还有很多需要做网址转向的情形。比如,为保护版权,你注册了多个域名,自然地,这些域名全部指向一个网站。如用为主域名,其它域名就可以转向到。或者你注册了公司全称域名但太长,你也注册了缩写域名方便用户记住,其中一个做主域名,另一个就可以转向到主域名。

三、301 重定向可促进搜索引擎优化效果
       从搜索引擎优化角度出发,301 重定向是网址重定向最为可行的一种办法。当网站的域名发生变更后,搜索引擎只对新网址进行索引,同时又会把旧地址下原有的外部链接如数转移到新地址下,从而不会让网站的排名因为网址变更而收到丝毫影响。同样,在使用301永久性重定向命令让多个域名指向网站主域时,亦不会对网站的排名产生任何负面影响。
       网址转向方法主要包括:301 转向,302 转向,JavaScript 转向,PHP/ASP/CGI 转向,META REFRESH 网页META 刷新等。302 转向可能会有URL 规范化问题。其它方法都是常用的作弊手法,当然不是说不可以正当地用,方法本身没有错,但被作弊者用多了,搜索引擎对这些可疑的转向都很敏感。
当网页A 用301 重定向转到网页B 时,搜索引擎可以肯定网页A 永久地改变位置,或者说实际上不存在了,就会把网页B 当作唯一的有效目标。好处是,第一,没有网址规范化问题,第二,也很重要的,网页A 的PR 网页级别会传到网页B。

四、IIS 服务器实现301 重定向
     打开internet 信息服务管理器,在欲重定向的网页或目录上按右键;
     选中“重定向到URL”;
     在对话框中输入目标页面的地址;
     切记,记得选中“资源的永久重定向”;
      当然,最后要点击“应用”。
五、Apache 服务器实现301 重定向
      相比较来说,Apache 实现起来要比IIS 简单多了。在Apache 中,有个很重要的文件.htaccess,通过对它的设置,可以实现很多强大的功能,301 重定向只是其中之一。
       redirect permanent /
      将目录下内容重定向到
      redirect permanent /old.html  :
      将网页old.html 内容重定向到
通过合理地配置重定向参数中的正则表达式,可以实现更复杂的匹配。有兴趣的朋友可参考Apache 手册。

六、PHP 下的301 重定向
Header( “Location: ” );?>
七、ASP 下的301 重定向
<%@ Language=VBScript %>
<% Response.Status=”301 Moved Permanently” Response.AddHeader “Location” , ”
h”>
八、ASP .NET 下的301 重定向

九、jsp下的重定向

        描述JAVA实现301永久重定向,原始文件为 download.jsp

       <%@ page language=”java” contentType=”text/html; charset=UTF-8″ pageEncoding=”UTF-8″%>
<%
  // 转到iq.jsp
out.clearBuffer(); 
response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);   
String param = request.getQueryString();
response.setHeader(“Location”,”iq.jsp”+(param==null?”":(“?”+param)));
%>

如上这段代码,将访问download.jsp的所有访问,永久重定向到 iq.jsp

参数也同时携带过去。

   如果你的重定向是跨域的,或者使用完整路径,可以使用

response.setHeader(“Location”,(param==null?”":(“?”+param)));

这样你就可以指定完整的转向域名了。

       这是我总结的,基本上包含了各类主机和各种技术的网站的301重定向的源码,这样,就不会再有页面目录改了名字就无法访问的尴尬了。

     使用301最大的好处就是旧的页面能重定向到新的任意页面,而不像404,所有错误页面都到同一页面,这样会降低网站pr值,也不会像302重定向,被搜索引擎认为是作弊。

     好了,今天的讲解就到这儿了,欢迎关注下期SEO技术。

阅读(624) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~