问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

HTTP 状态码 302,301,304的的区别?

发布网友 发布时间:2022-04-23 13:57

我来回答

3个回答

懂视网 时间:2022-04-20 21:41

302 Found 请求的资源现在临时从不同的URI响应请求。由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求。只有在Cache-Control或Expires中进行了指定的情况下,这个响应才是可缓存的。 新的临时性的URI应当在响应的Location域中返回。除非这是一个HEAD请求,否则响应的实体中应当包含指向新的URI的超链接及简短说明。 如果这不是一个GET或者HEAD请求,那么浏览器禁止自动进行重定向,除非得到用户的确认,因为请求的条件可能因此发生变化。 注意:虽然RFC 1945和RFC 2068规范不允许客户端在重定向时改变请求的方法,但是很多现存的浏览器将302响应视作为303响应,并且使用GET方式访问在Location中规定的URI,而无视原先请求的方法。状态码303和307被添加了进来,用以明确服务器期待客户端进行何种反应。

这是从维基百科上找来的概念,看过后还是能看明白个大概吧。301是说访问的资源已经永久删除啦,客户端要根据新的URI访问重定向;而302的意思就是说访问的资源可能暂时先用location的URI访问,但旧资源还在的,下次你再来访问的时候可能就不用重定向了。

常用应用场景

  • 场景一 想换个域名,旧的域名不用啦,这样用户访问旧域名时用301就重定向到新的域名。其实也是告诉搜索引擎收录的域名需要对新的域名进行收录。

  • 场景二 登录后重定向到指定的页面,这种场景比较常见就是登录成功跳转到具体的系统页面。

  • 场景三 有时候需要自动刷新页面,比如5秒后回到订单详细页面之类。

  • 场景四 有时系统进行升级或者切换某些功能时,需要临时更换地址。

  • 场景五 像微博之类的使用短域名,用户浏览后需要重定向到真实的地址之类。

  • 代码演示

    public void doGet(HttpServletRequest request, HttpServletResponse response) 
     throws ServletException, IOException { 
     //请求重定向的例子 
     response.setStatus(301); 
     response.setHeader("Location", "http://127.0.0.1/login.htm");
    }

    在用户访问后浏览器都会重定向到http://127.0.0.1/login.htm

    301与302在选择上注意的问题

    302 重定向和网址劫持(URL hijacking) 从网址A 做一个302 重定向到网址B 时,主机服务器的隐含意思是网址A 随时有可能改主意,重新显示本身的内容或转向其他的地方。大部分的搜索引擎在大部分情况下,当收到302重定向时,一般只要去抓取目标网址就可以了,也就是说网址B。如果搜索引擎在遇到302 转向时,百分之百的都抓取目标网址B 的话,就不用担心网址URL 劫持了。问题就在于,有的时候搜索引擎,尤其是Google,并不能总是抓取目标网址。比如说,有的时候A 网址很短,但是它做了一个302重定向到B网址,而B网址是一个很长的乱七八糟的URL网址,甚至还有可能包含一些问号之类的参数。很自然的,A网址更加用户友好,而B网址既难看,又不用户友好。这时Google很有可能会仍然显示网址A。由于搜索引擎排名算法只是程序而不是人,在遇到302重定向的时候,并不能像人一样的去准确判定哪一个网址更适当,这就造成了网址URL劫持的可能性。也就是说,一个不道德的人在他自己的网址A做一个302重定向到你的网址B,出于某种原因, Google搜索结果所显示的仍然是网址A,但是所用的网页内容却是你的网址B上的内容,这种情况就叫做网址URL 劫持。你辛辛苦苦所写的内容就这样被别人偷走了。302重定向所造成的网址URL劫持现象,已经存在一段时间了。不过到目前为止,似乎也没有什么更好的解决方法。在正在进行的谷歌大爸爸数据中心转换中,302 重定向问题也是要被解决的目标之一。从一些搜索结果来看,网址劫持现象有所改善,但是并没有完全解决。

    大体意思是会引起搜索引擎的排名,而且302重定向很容易被搜索引擎误认为是利用多个域名指向同一网站,那么你的网站就会被封掉。

    是说除非真是临时重定向使用302,其他的情况最好还是使用301吧

    参考资料

    HTTP状态码 https://zh.wikipedia.org/wiki/HTTP状态码

    http状态码301和302详解及区别——辛酸的探索之路 http://blog.csdn.net/grandpang/article/details/47448395

    302重定向 http://baike.baidu.com/view/2453504.htm

    注:此文章为原创,欢迎转载,请在文章页面明显位置给出此文链接! 若您觉得这篇文章还不错请点击下右下角的推荐,非常感谢! http://www.cnblogs.com/5207

    热心网友 时间:2022-04-20 18:49

    302是临时重定向。
    301是永久重定向。
    301和302效果看起来一样,但为集权,最好是用301。
    304表示未更新。出现这种情况要注意做好网站内容更新。

    热心网友 时间:2022-04-20 20:07

    301 Moved Permanently 永久移动。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替
    302 Found 临时移动。与301类似。但资源只是临时被移动。客户端应继续使用原有URI
    304 Not Modified 未修改。所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。客户端通常会缓存访问过的资源,通过提供一个头信息指出客户端希望只返回在指定日期之后修改的资源。
    声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
    陌陌发语音出现转码失败怎么办 女孩2010年5月10号阴历3月27早晨9点55分出生的五行缺什么 钟姓男孩名字2023年5月10日出生的 凤眼果有什么营养?凤眼果的这些营养你都知道吗? 专升本成绩多少合格 山东专升本成绩多少合格 山东2022年专升本成绩什么时候出 2024专升本成绩公布时间及入口 2023年山东专升本各专业录取分数线 什么时候出专升本成绩 山东专升本综合素质测评成绩怎么算 HTTP Error 302这个错误应该怎么解决呢? “http_200”、“http_302”分别是什么意思? 安踏的篮球好还是斯伯丁的好啊? httpget code 302怎么处理 安踏要疯狂速战4鞋带多长 HTTP 状态消息 200 302 304 403 404 500 分别表示什么? 【图】安踏最好的篮球鞋是哪一款 HTTP 状态码 301和302的区别? 安踏所有篮球鞋都适合打外场吗?除了水泥杀手和霸道 http状态302如何解决? 安踏球鞋ufo天体的底会磨烂吗? 安踏的篮球质量好吗 安踏的篮球怎么样,价位怎么样? 安踏的篮球鞋怎么样 安踏哪几款的篮球鞋最好? 安踏最好的篮球鞋是哪些? 安踏霸道来者不善外场实战篮球鞋41码能穿42码吗? 安踏的篮球怎么样? 安踏kt1pro适合什么季节穿 安踏哪款篮球最好? httperror 302要怎么解决 请教http 302错误的解决办法 http协议状态码,302和303的区别 网站的HTTP状态码出302是怎么回事,求解决。 如何解决HTTP 302: 连接错误? HTTP返回状态码中301和302的区别 http response codes code 302 什么意思 http状态 302对seo有没有什么影响 301、404、500、200、304等HTTP状态,代表什么意思? 苹果电池不匹配会导致手机卡顿吗? http状态码307和301有什么区别呢 红米手机电充不进去,关机后充电显示电池不匹配自动断开充电,是怎么回事,需要怎么救 苹果6s电池和手机不匹配是否会影响手机显示屏功能? 新买手机的充电器输出电压和电池不匹配怎么回事 手机电池容量需要匹配吗 Iphone 手机无法充电,显示不匹配此配件 iphone5充电时显示不匹配??怎么解决 我的苹果手机新换的电池,为什么有时候会显示充电不匹配 我的手机,电池用了很久的,今天充电时,却发现,手机上写着几个字:“电池不匹配”这是怎么回事? 手机可以装上不匹配的大容量电池吗?我的是3000mAh。