HTTP 的重定向301,302,303,307(转)

HTTP 的重定向301,302,303,307(转)

(2012-12-11 11:55:04)

标签:

杂谈

分类: 网络

301 永久重定向,告诉客户端以后应从新地址访问.
302 作为HTTP1.0的标准,以前叫做Moved Temporarily ,现在叫Found. 现在使用只是为了兼容性的处理,包括PHP的默认Location重定向用的也是302.
但是HTTP 1.1 有303 和307作为详细的补充,其实是对302的细化
303:对于POST请求,它表示请求已经被处理,客户端可以接着使用GET方法去请求Location里的URI。
307:对于POST请求,表示请求还没有被处理,客户端应该向Location里的URI重新发起POST请求。

实际测试:
测试内容:
写一个测试的test.html代码,发起post请求到test.php页面中
test.php页面分别给出3种重定向处理,都跳到test2.php
test2.php打印出post的结果
(至于怎么写..自己查手册吧,PHP发送头很容易.)

  1. ....
  2. 301 => "HTTP/1.1 301 Moved Permanently",
  3. 302 => "HTTP/1.1 302 Found",
  4. 303 => "HTTP/1.1 303 See Other",
  5. 307 => "HTTP/1.1 307 Temporary Redirect",
  6. ....

测试结果:
301,302和303的处理结果是一样的,直接跳转到test2.php,post没有内容
307的会重新post请求到test2.php,并且给出页面提示

来源:http://leexj1981.blog.163.com/blog/static/14393065920103192952974/

 
转:链接
上一篇:XML使用练习


下一篇:Kubernetes 笔记 10 Job 机器人加工厂