从HTTP状态 301,302,200 来看页面跳转

简介: 从HTTP状态 301,302,200 来看页面跳转 301和302 Http状态有啥区别?301,302 都是HTTP状态的编码,都代表着某个URL发生了转移,不同之处在于: 301 redirect: 301 代表永久性转移(Permanently Moved), 302 redirect: 302 代表暂时性转移(Temporarily Moved ), 当然 Http 状态 200 标示没有任何问题发生。
从HTTP状态 301,302,200 来看页面跳转 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 使用不当,或者灵活使用会有不错的效果的,比如参看下面文章: 302转向与网址劫持 301转向和网址规范化 301重定向的实现方法 51window提供的301转向的代码 一个网站十几个域名的重定向经验谈 几个常用的301重定向 如果是运维人员,配置WEB服务器的一些设置就可以实现跳转,比如下面一些关于IIS实现重定向的文章 将请求重定向到文件、目录或程序 (IIS 6.0) http://www.microsoft.com/technet/prodtechnol/windowsserver2003/zh-chs/library/iis/fbcccfce-6695-4f92-bd55-869d85ff49fb.mspx?mfr=true 重定向参考 (IIS 6.0) http://www.microsoft.com/technet/prodtechnol/windowsserver2003/zh-chs/library/iis/41c238b2-1188-488f-bf2d-464383b1bb08.mspx?mfr=true 其他WEB服务器也可以通过设置实现跳转,我就不罗列了。 从技术人员来说我们比较常用的跳转方法有以下几种: 我们使用 Fiddler 工具来监控的下面提到的几种方法,看跳转过程中HTTP状态码是301?302?200?: 方法1:Response.Redirect("Test.aspx"); 状态码 301 临时性跳转 方法2: 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","..."); 这里的 ... 表示你要跳转去的页面。 参考资料: 301永久重定向实现方式及302重定向
目录
相关文章
|
SQL 关系型数据库 MySQL
Navicat使用HTTP通道连接MySQL(远程mysql3306端口关闭或者只允许localhost链接状态)...
Navicat使用HTTP通道连接MySQL(远程mysql3306端口关闭或者只允许localhost链接状态)...
7904 0
Navicat使用HTTP通道连接MySQL(远程mysql3306端口关闭或者只允许localhost链接状态)...
|
缓存 网络协议 前端开发
Http实战之无状态协议、keep-alive分析(2)
Http实战之无状态协议、keep-alive分析(2)
1035 1
Http实战之无状态协议、keep-alive分析(2)
|
存储 安全 JavaScript
Http实战之无状态协议、keep-alive分析(1)
Http实战之无状态协议、keep-alive分析(1)
433 1
Http实战之无状态协议、keep-alive分析(1)
JavaWeb课程复习资料——Http状态 405-方法不允许
JavaWeb课程复习资料——Http状态 405-方法不允许
252 0
JavaWeb课程复习资料——Http状态 405-方法不允许
JavaWeb HTTP状态 405 - 方法不允许
JavaWeb HTTP状态 405 - 方法不允许
761 0
JavaWeb HTTP状态 405 - 方法不允许
EMQ
|
消息中间件 缓存 监控
NanoMQ Newsletter 2022-08|v0.11:MQTT 5.0 + MQTT over QUIC 桥接,新增 HTTP API 监控客户端状态
八月,0.11.0版本发布:增加了MQTT 5.0+MQTT over QUIC桥接模式,新增和修复了对已连接客户端状态进行监控和查询的HTTP API。
EMQ
1053 0
NanoMQ Newsletter 2022-08|v0.11:MQTT 5.0 + MQTT over QUIC 桥接,新增 HTTP API 监控客户端状态
66 http的无状态协议和cookie概述
66 http的无状态协议和cookie概述
1198 0
66 http的无状态协议和cookie概述
HTTP状态码对照表(全部状态_建议收藏)(6)
HTTP状态码对照表(全部状态_建议收藏)(6)
310 0
HTTP状态码对照表(全部状态_建议收藏)(6)
HTTP状态码对照表(全部状态_建议收藏)(5)
HTTP状态码对照表(全部状态_建议收藏)(5)
319 0
HTTP状态码对照表(全部状态_建议收藏)(5)
HTTP状态码对照表(全部状态_建议收藏)(4)
HTTP状态码对照表(全部状态_建议收藏)(4)
307 0
HTTP状态码对照表(全部状态_建议收藏)(4)