博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[转] 从HTTP状态 301,302,200 来看页面跳转
阅读量:7010 次
发布时间:2019-06-28

本文共 1294 字,大约阅读时间需要 4 分钟。

转载自: 

301和302 Http状态有啥区别?

301,302 都是HTTP状态的编码,都代表着某个URL发生了转移,不同之处在于:

301 redirect: 301 代表永久性转移(Permanently Moved),

302 redirect: 302 代表暂时性转移(Temporarily Moved ),

当然 Http 状态 200 标示没有任何问题发生。

 

这两种转移在使用的时候有啥好处或者问题?

301 重定向是网页更改地址后对搜索引擎友好的最好方法,只要不是暂时搬移的情况,都建议使用301来做转址。

302 重定向是临时性转移。

在前些年,不少Black Hat SEO曾广泛应用这项技术作弊,目前,各大主要搜索引擎均加强了打击力度,象Google前些年对Business.com以及近来对BMW德国网站的惩罚。即使网站客观上不是spam,也很容易被搜寻引擎容易误判为spam而遭到惩罚。

研究搜索引擎优化(SEO)的人,应该都知道,301,302 使用不当,或者灵活使用会有不错的效果的,比如参看下面文章:

 

 

如果是运维人员,配置WEB服务器的一些设置就可以实现跳转,比如下面一些关于IIS实现重定向的文章

将请求重定向到文件、目录或程序 (IIS 6.0)

重定向参考 (IIS 6.0)

其他WEB服务器也可以通过设置实现跳转,我就不罗列了。

 

 

从技术人员来说我们比较常用的跳转方法有以下几种:

我们使用  工具来监控的下面提到的几种方法,看跳转过程中HTTP状态码是301?302?200?:

 

方法1:Response.Redirect(“Test.aspx”);

状态码 301  临时性跳转

 

方法2:<meta http-equiv=”refresh” content=”5; URL=Test.aspx” />

meta fresh: 这在2000年前比较流行,不过现在已很少见。其具体是通过网页中的meta指令,在特定时间后重定向到新的网页,如果延迟的时间太短(约5秒之內),会被判断为spam。这种跳转方式,整个跳转过程中,页面Http状态都是200,即,页面没有任何错误发生。

 

方法3:Server.Transfer(“Test.aspx”);

这种跳转方式,整个跳转过程中,页面Http状态都是200,即,页面没有任何错误发生。

 

方法4:URLRewrite

这种跳转方式,整个跳转过程中,页面Http状态都是200,即,页面没有任何错误发生。

 

没有一种是301跳转。也就是上面几种跳转方式都用不到301跳转的好处。

 

使用301跳转有啥好处呢?

SEO(搜索引擎优化)中提到一点:如果我们把一个地址采用301跳转方式跳转的话,搜索引擎会把老地址的PageRank等信息带到新地址,同时在搜索引擎索引库中彻底废弃掉原先的老地址。

 

如何编码实现301跳转呢?

Response.Status = “301 Moved Permanently”;

Response.AddHeader(“Location”,”…”);

这里的 … 表示你要跳转去的页面。

你可能感兴趣的文章
读书笔记3 Socket
查看>>
SQLiteParameter不能将TableName作为参数
查看>>
百度地图API学习总结
查看>>
tomcat发布web项目,支持域名
查看>>
webstom设置和monokia配色方案
查看>>
js和Jquery获取选中select值和文本
查看>>
Linux系统排查1——内存篇
查看>>
Java实现注册邮箱激活验证
查看>>
数据库缓存
查看>>
mvc 数据验证金钱格式decimal格式验证
查看>>
常用的Web服务器
查看>>
UPW学习资料整理 .NET C# 转
查看>>
Oracle12c中新建用户
查看>>
分布式编译工具
查看>>
对我而言晦涩的递归
查看>>
React Native 从入门到原理
查看>>
iOS如何随意的穿插跳跃,push来pop去
查看>>
使用maven编译Java项目 http://www.tuicool.com/articles/YfIfIrq
查看>>
Strut2中的session和servlet中的session的区别
查看>>
自定义adapter实现listview双列显示
查看>>