2019独角兽企业重金招聘Python工程师标准>>>

最近帮朋友开发个小app,该app是在外层加一个壳,我们android端使用webview加载对方已经使用html5做好的网页。

朋友在加载过程中遇到一个状态码502,后来经发现原来是地址设置错了,在本地测试环境都没问题,放到服务器上就爆了502,最后修改简单解决了问题。

1. 502,Bad Gateway,翻译过来:网关错误;
2. 路由器就是最常用的网关,如果一直提醒网关错误,就是ip设置时候网关地址错了;偶尔出现,应该是更上一级的错误,一般没办法解决;

看来我们要多知道http的各种状态码有利于自己平时开发定位问题。

502 Bad Gateway:tomcat没有启动起来 
504 Gateway Time-out: nginx报出来的错误,一般是nginx做为反向代理服务器的时候,所连接的应用服务器譬如tomcat无相应导致的

302(临时移动) 服务器目前正从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求,302响应时,临时URL通过Location 字段返回给客户端。 
304(未修改) 自从上次请求后,请求的网页未被修改过。服务器返回此响应时,不会返回网页内容。 
307 - Temporary Redirect 许多浏览器会错误地响应302应答进行重定向,即使原来的请求是POST,即使它实际上只能在POST请求的应答是303时 才能重定向。由于这个原因,HTTP 1.1新增了307,以便更加清除地区分几个状态代码:当出现303应答时,浏览器可以跟随重定向的GET和POST请求;如果是307,301,302应答,则浏览器只能跟随对GET、HEAD请求的重定向。(HTTP 1.1新)

根据RFC2616D定义,对于HTTP Response响应码301、302、307,如果请求不是GET或者HEAD,而response返回的状态码是302,那么浏览器禁止重定向到新的请求,除非得到用户的确认!因为这可能会导致请求条件变更而出现。参考:RFC2616 Hypertext Transfer Protocol -- HTTP/1.1 
相应的Java的HTTP Client包就是根据这个规范进行处理的,如果对返回Response状态码是307,301,302的POST请求设置setFollowRedirects,系统就会报错:java.lang.IllegalArgumentException: Entity enclosing requests cannot be redirected without user intervention!如果可以的话,把POST改成Get后即使在307响应码的情况下也能自动重定向

1xx响应信息提示 
这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个1xx 
• 100 - Continue 初始的请求已经接受,客户应当继续发送请求的其余部分。(HTTP 1.1新) 
• 101 - Switching Protocols 服务器将遵从客户的请求转换到另外一种协议(HTTP 1.1新) 
2xx - 成功 
这类状态代码表明服务器成功地接受了客户端请求。 
• 200 - OK 一切正常,对GET和POST请求的应答文档跟在后面。 
• 201 - Created 服务器已经创建了文档,Location头给出了它的URL。 
• 202 - Accepted 已经接受请求,但处理尚未完成。 
• 203 - Non-Authoritative Information 文档已经正常地返回,但一些应答头可能不正确,因为使用的是文档的拷贝,非权威性信息(HTTP 1.1新)。 
• 204 - No Content 没有新文档,浏览器应该继续显示原来的文档。如果用户定期地刷新页面,而Servlet可以确定用户文档足够新,这个状态代码是很有用的。 
• 205 - Reset Content 没有新的内容,但浏览器应该重置它所显示的内容。用来强制浏览器清除表单输入内容(HTTP 1.1新)。 
• 206 - Partial Content 客户发送了一个带有Range头的GET请求(分块请求),服务器完成了它(HTTP 1.1新)。 
3xx - 重定向 
客户端浏览器必须采取更多操作来实现请求。例如,浏览器可能不得不请求服务器上的不同的页面,或通过代理服务器重复该请求。 
• 300 - Multiple Choices 客户请求的文档可以在多个位置找到,这些位置已经在返回的文档内列出。如果服务器要提出优先选择,则应该在Location应答头指明。 
• 301 - Moved Permanently 客户请求的文档在其他地方,新的URL在Location头中给出,GET、HEAD请求时浏览器应该自动地访问新的URL。 
• 302 - Found 类似于301,但新的URL应该被视为临时性的替代,而不是永久性的。注意,在HTTP1.0中对应的状态信息是“Moved Temporatily”。出现该状态代码时,浏览器能够自动访问新的URL,因此它是一个很有用的状态代码。注意这个状态代码有时候可以和301替换使 用。例如,如果浏览器错误地请求 http://host/~user (缺少了后面的斜杠),有的服务器返回301,有的则返回302。严格地说,我们只能假定只有当原来的请求是GET、HEAD时浏览器才会自动重定向。请参见307。 
• 303 - See Other 类似于301/302,不同之处在于,如果原来的请求是POST,Location头指定的重定向目标文档应该通过GET提取,即该状态码存在的最主要意义是为了处理POST请求重定向到GET请求的情况(HTTP 1.1新)。 
• 304 - Not Modified 客户端有缓冲的文档并发出了一个条件性的请求(一般是提供If-Modified-Since头表示客户只想比指定日期更新的文档)。服务器告诉客户,原来缓冲的文档还可以继续使用。 
• 305 - Use Proxy 客户请求的文档应该通过Location头所指明的代理服务器提取(HTTP 1.1新)。 
• 307 - Temporary Redirect 许多浏览器会错误地响应302应答进行重定向,即使原来的请求是POST,即使它实际上只能在POST请求的应答是303时 才能重定向。由于这个原因,HTTP 1.1新增了307,以便更加清除地区分几个状态代码:当出现303应答时,浏览器可以跟随重定向的GET和POST请求;如果是307,301,302应答,则浏览器只能跟随对GET、HEAD请求的重定向。(HTTP 1.1新) 
4xx - 客户端错误 
发生错误,客户端似乎有问题。例如,客户端请求不存在的页面,客户端未提供有效的身份验证信息。 
• 400 - Bad Request 请求出现语法错误。 
• 401 - Unauthorized 访问被拒绝,客户试图未经授权访问受密码保护的页面。应答中会包含一个WWW-Authenticate头,浏览器据此显示用户名字/密码对话框,然后在 填写合适的Authorization头后再次发出请求。IIS 定义了许多不同的 401 错误,它们指明更为具体的错误原因。这些具体的错误代码在浏览器中显示,但不在 IIS 日志中显示: 
• 401.1 - 登录失败。 
• 401.2 - 服务器配置导致登录失败。 
• 401.3 - 由于 ACL 对资源的限制而未获得授权。 
• 401.4 - 筛选器授权失败。 
• 401.5 - ISAPI/CGI 应用程序授权失败。 
• 401.7 –访问被 Web 服务器上的 URL 授权策略拒绝。这个错误代码为 IIS 6.0 所专用。 
• 403 - Forbidden 资源不可用。服务器理解客户的请求,但拒绝处理它。通常由于服务器上文件或目录的权限设置导致。禁止访问:IIS 定义了许多不同的 403 错误,它们指明更为具体的错误原因: 
• 403.1 - 执行访问被禁止。 
• 403.2 - 读访问被禁止。 
• 403.3 - 写访问被禁止。 
• 403.4 - 要求 SSL。 
• 403.5 - 要求 SSL 128。 
• 403.6 - IP 地址被拒绝。 
• 403.7 - 要求客户端证书。 
• 403.8 - 站点访问被拒绝。 
• 403.9 - 用户数过多。 
• 403.10 - 配置无效。 
• 403.11 - 密码更改。 
• 403.12 - 拒绝访问映射表。 
• 403.13 - 客户端证书被吊销。 
• 403.14 - 拒绝目录列表。 
• 403.15 - 超出客户端访问许可。 
• 403.16 - 客户端证书不受信任或无效。 
• 403.17 - 客户端证书已过期或尚未生效。 
• 403.18 - 在当前的应用程序池中不能执行所请求的 URL。这个错误代码为 IIS 6.0 所专用。 
• 403.19 - 不能为这个应用程序池中的客户端执行 CGI。这个错误代码为 IIS 6.0 所专用。 
• 403.20 - Passport 登录失败。这个错误代码为 IIS 6.0 所专用。 
• 404 - Not Found 无法找到指定位置的资源。这也是一个常用的应答。 
• 404.0 -(无) – 没有找到文件或目录。 
• 404.1 - 无法在所请求的端口上访问 Web 站点。 
• 404.2 - Web 服务扩展锁定策略阻止本请求。 
• 404.3 - MIME 映射策略阻止本请求。 
• 405 - Method Not Allowed 请求方法(GET、POST、HEAD、DELETE、PUT、TRACE等)对指定的资源不适用,用来访问本页面的 HTTP 谓词不被允许(方法不被允许)(HTTP 1.1新) 
• 406 - Not Acceptable 指定的资源已经找到,但它的MIME类型和客户在Accpet头中所指定的不兼容,客户端浏览器不接受所请求页面的 MIME 类型(HTTP 1.1新)。 
• 407 - Proxy Authentication Required 要求进行代理身份验证,类似于401,表示客户必须先经过代理服务器的授权。(HTTP 1.1新) 
• 408 - Request Timeout 在服务器许可的等待时间内,客户一直没有发出任何请求。客户可以在以后重复同一请求。(HTTP 1.1新) 
• 409 - Conflict 通常和PUT请求有关。由于请求和资源的当前状态相冲突,因此请求不能成功。(HTTP 1.1新) 
• 410 - Gone 所请求的文档已经不再可用,而且服务器不知道应该重定向到哪一个地址。它和404的不同在于,返回407表示文档永久地离开了指定的位置,而404表示由于未知的原因文档不可用。(HTTP 1.1新) 
• 411 - Length Required 服务器不能处理请求,除非客户发送一个Content-Length头。(HTTP 1.1新) 
• 412 - Precondition Failed 请求头中指定的一些前提条件失败(HTTP 1.1新)。 
• 413 – Request Entity Too Large 目标文档的大小超过服务器当前愿意处理的大小。如果服务器认为自己能够稍后再处理该请求,则应该提供一个Retry-After头(HTTP 1.1新)。 
• 414 - Request URI Too Long URI太长(HTTP 1.1新)。 
• 415 – 不支持的媒体类型。 
• 416 – Requested Range Not Satisfiable 服务器不能满足客户在请求中指定的Range头。(HTTP 1.1新) • 417 – 执行失败。 
• 423 – 锁定的错误。 
5xx - 服务器错误 
服务器由于遇到错误而不能完成该请求。 
• 500 - Internal Server Error 服务器遇到了意料不到的情况,不能完成客户的请求。 
• 500.12 - 应用程序正忙于在 Web 服务器上重新启动。 
• 500.13 - Web 服务器太忙。 
• 500.15 - 不允许直接请求 Global.asa。 
• 500.16 – UNC 授权凭据不正确。这个错误代码为 IIS 6.0 所专用。 
• 500.18 – URL 授权存储不能打开。这个错误代码为 IIS 6.0 所专用。 
• 500.100 - 内部 ASP 错误。 
• 501 - Not Implemented 服务器不支持实现请求所需要的功能,页眉值指定了未实现的配置。例如,客户发出了一个服务器不支持的PUT请求。 
• 502 - Bad Gateway 服务器作为网关或者代理时,为了完成请求访问下一个服务器,但该服务器返回了非法的应答。 亦说Web 服务器用作网关或代理服务器时收到了无效响应。 
• 502.1 - CGI 应用程序超时。 
• 502.2 - CGI 应用程序出错。 
• 503 - Service Unavailable 服务不可用,服务器由于维护或者负载过重未能应答。例如,Servlet可能在数据库连接池已满的情况下返回503。服务器返回503时可以提供一个 Retry-After头。这个错误代码为 IIS 6.0 所专用。 
• 504 - Gateway Timeout 网关超时,由作为代理或网关的服务器使用,表示不能及时地从远程服务器获得应答。(HTTP 1.1新) 。 
• 505 - HTTP Version Not Supported 服务器不支持请求中所指明的HTTP版本。(HTTP 1.1新)

转载于:https://my.oschina.net/u/3318187/blog/851713

关于http的各种状态码--内容转自其他博客相关推荐

  1. redis源码笔记 - 刘浩de技术博客 - 博客园

    redis源码笔记 - 刘浩de技术博客 - 博客园 redis源码笔记 - 刘浩de技术博客 - 博客园 redis源码笔记 记录发现的一个hiredis的bug 摘要: hiredis是redis ...

  2. 博客与计算机相关的内容无法进行查看,博客检索的关键技术研究-计算机科学与技术专业论文.docx...

    博客检索的关键技术研究-计算机科学与技术专业论文 Classified Index: TP391.3 U.D.C.: 681.37 Dissertation for the Master Degree ...

  3. ASP.NET的SEO:HTTP报头状态码---内容重定向

    本系列目录 我们经常说"404错误",你知道他指的是什么意思么? 404其实是Http报头所包含的一个"状态码",表明该Http请求失败.那么除此之外,还有哪些 ...

  4. (附源码)Node.js自我展示博客网站 毕业设计 231547

    自我展示博客网站的设计与实现 摘 要 个人博客网站是当今网络的热点,个人博客技术的出现使得每个人可以零成本.零维护地创建自己的网络媒体,Blog站点所形成的网状结构促成了不同于以往社区的Blog文化, ...

  5. md 生成目录 码云_搭建简易博客方案

    现在大家都喜欢用markdown来写技术博客,这篇文章将阐述搭建支持markdown的简易博客方法. 我的写作需求 通过阅读本文,您将学会搭建满足以下条件的博客: 博客只用书写markdown文件 能 ...

  6. (附源码)springboot掌上博客系统 毕业设计 063131

    Springboot掌上博客系统的设计与实现 摘 要 掌上博客系统是当今网络的热点,博客技术的出现使得每个人可以零成本.零维护地创建自己的网络媒体,Blog站点所形成的网状结构促成了不同于以往社区的B ...

  7. (附源码)Node.js自我展示博客网站 毕业设计231547

    自我展示博客网站的设计与实现 摘 要 个人博客网站是当今网络的热点,个人博客技术的出现使得每个人可以零成本.零维护地创建自己的网络媒体,Blog站点所形成的网状结构促成了不同于以往社区的Blog文化, ...

  8. 码云 + Hexo 搭建个人博客

    文章比较长,需要侧边栏目录的,可以点击我的个人博客地址:http://zwd596257180.gitee.io/blog 如果有什么问题想问的,请在 CSDN 上留言. 准备环境 安装 Node 安 ...

  9. [附源码]计算机毕业设计Python个人博客系统(程序+源码+LW文档)

    该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行 环境配置: Pychram社区版+ python3.7.7 + Mysql5.7 + HBuilderX+list pip+N ...

最新文章

  1. 代码如何获取单反相机拍摄的照片_看看如何拍摄出更好的照片
  2. Xamarin Essentials教程实现数据的传输功能实例
  3. vim编辑二进制文件
  4. Linux基础命令的操作(时间与日期,日历,计算器)
  5. adprw指令通讯案例_S7-1200与S7-300傻瓜式通讯
  6. 成功解决FutureWarning: reshape is deprecated and will raise in a subsequent release. Please use .values.
  7. simpy练习案例(二):小车运行与充电
  8. horizontal center and vertical middle in CSS
  9. Debian For ARM Webmin Server
  10. 封装ajaxGetJs
  11. JS 正则表达式基础
  12. 常用函数的傅里叶变换对汇总
  13. EPSON爱普生系列打印机清洗更换墨盒方法
  14. 现金流贴现法估值模型
  15. 海森矩阵(Hessian)
  16. 期末排名算不算计算机成绩,智学网怎么看年级排名 智学网如何查看期末考试成绩...
  17. html中img图片绝对路径时无法正常显示的问题
  18. 浅谈工业网络架构及安全
  19. 区块链中的节点是什么意思?
  20. 502粘到手上变硬了怎么办_急手被502胶水粘住了怎么办?

热门文章

  1. 这段百度问答,对我相关有对啊!!!----如何获取Windows系统登陆用户名
  2. el captain设置环境变量
  3. 【1291】数据结构上机测试4.1:二叉树的遍历与应用1 SDUTOJ
  4. XML约束——Schema约束
  5. 【EXLIBRIS】图洛克《收入再分配的经济学》中译本序 【ZZ】
  6. python float 精度_谈谈关于Python里面小数点精度控制的问题
  7. 在运行hadoopdb\hive\hadoop源码时不能正确调用自定义core-site.xml等配置文件
  8. 实战 Windows Server 2012 群集共享卷
  9. 如何让主机合规分析报告评分达到90分?
  10. redis---安全设置