• 结合 Nginx 谈谈 Http 状态码


    Http状态码简介

      【百度百科HTTP状态码(英语:HTTP Status Code)是用以表示网页服务器超文本传输协议响应状态的3位数字代码。它由 RFC 2616 规范定义的,并得到 RFC 2518、RFC 2817、RFC 2295、RFC 2774 与 RFC 4918 等规范扩展。所有状态码的第一个数字代表了响应的五种状态之一(1-消息,2-成功,3-重定向,4-请求错误,5-服务器错误)。所示的消息短语是典型的,但是可以提供任何可读取的替代方案。 除非另有说明,状态码是HTTP / 1.1标准(RFC 7231)的一部分。

             

       下面结合 Nginx 服务来实验一下,几种常见的状态码出现的情况。 这里使用到的 Nginx 版本是 nginx-1.17.5

     【200 OK

      启动 Nginx 后,第一次请求 localhost,返回 200 OK,表示 【请求已成功,请求所希望的响应头或数据体将随此响应返回。出现此状态码是表示正常状态。】

         

     【304 Not Modified

      再次请求 localhost, 返回 304 Not Modified,表示【客户端发现请求在客户端缓存中存在,则将请求发送给服务器,服务器发现自上次相同请求后,请求资源并没有改变,并向客户端返回 304 状态码,请求的资源将从客户端缓存中获取。】

           可以看出在请求头(Request Headers)中会发送 If-Modified-Since 给服务器。如果是第一次请求,或者在客户端缓存中没有找到请求的话,则不会在请求头发送这个字段。

      

         

      【404 Not Found

            请求一个不存在的 url 地址,返回 404 Not Found,表示【请求失败,请求所希望得到的资源未被在服务器上发现。没有信息能够告诉用户这个状况到底是暂时的还是永久的。】

       

      【502 Bad Gateway

             首先在 Nginx 内配置一个转发如下:  路径为 /api/ 会转发到 http://localhost:8080 这个服务器上,当然这个服务器并没有启动,所以无法从这个服务器得到有效的响应。 

      

       请求后返回显示如下: 502 Bad Gateway 表示【作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。】

          

        

  • 相关阅读:
    学生管理
    数据类型
    Linux安装、发布Django项目
    函数式编程
    学生管理系统
    mysql数据库工具类
    python操作数据库
    链接mysql建库建表
    列表元组字典集合
    内置对象相关方法
  • 原文地址:https://www.cnblogs.com/zlxyt/p/11813010.html
Copyright © 2020-2023  润新知