HTTP请求报文


这个很有必要了解,好歹我们得知道Nginx在提供HTTP服务时,客户端都会传些什么。HTTP请求中客户端传送的内容称为HTTP请求报文。

1、请求行包含:

请求方法,请求URL,HTTP协议及版本。其中请求方法和支持的协议版本包含如下:
        GET,HEAD,POST 它们都支持HTTP1.0/1.1。
        PUT,DELETE,CONNECT,OPTIONS,TRACE,PATCH 它们只支持HTTP1.1。

2、请求头部:

客户端向服务器传递请求时附加的一些信息,由key/value组成,key和value由冒号分隔,每行一对,请求头常见的key 有 Cookie,User_Agent, Accept-Encoding。

3、请求体:

一般是由POST方法提交,它可能是图片,文件,或者是字符串。

1.2 HTTP响应报文


  

      这个仍然很有必要了解的,客户端得到了想要东东(有时候可能也得不到,如服务异常了),那里面包含了些什么。HTTP请求后返回给客户端的内容称为HTTP响应报文。

HTTP响应报文(服务器返回给客户端的内容)由三部分组成,它们分别是响应行,响应头,响应体。

响应行包含HTTP协议版本,状态码,状态码描述。

其中状态码的分类如下:

状态码

                                          作用

1XX

它表示请求已经被接受,正在继续处理,这种响应是临时响应,不会返回响应体。

2XX

成功处理并返回,它表示在服务器内已经被接收,被知晓,并处理完成。

3XX

重定向功能,告知客户端需要继续执行操作才可以完成请求。

4XX

出现问题,和客户端有关系,比如401表示权限问题,404表示访问了一个不存在的URL。

5XX

出现问题,和服务端有关,比如500表示内部错误,504表示请求超时。

响应头,为响应报文附加额外的信息,和请求头相似。区别在于它是返回给客户端,请求头部是从客户端发起。常见的响应头key如Content-Type,Content-Encoding。

响应体,请求返回到客户端的正文数据。

下面是一个完整的响应报文示例:

响应报文并非只有Nginx的后端服务器才能发送的,有些时候Nginx也可以作为服务器对请求报文的内容进行响应,比如return,echo等指令。

深入Nginx之《HTTP请求报文与HTTP响应报文》的更多相关文章

  1. 深入Nginx之《常用参数配置技巧》

    常见参配置实战技巧 下面会讲解实战中应该怎么配置更为合理. 1.user 默认是nobody,如果使用nobody,Nginx在运行过程中会出现很多操作没有权限,比如写硬盘.一般都是用低于root级别 ...

  2. Production环境中iptables常用参数配置

    production环境中iptables常用参数配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我相信在实际生产环境中有很多运维的兄弟跟我一样,很少用到iptables的这个 ...

  3. Nginx代理常用参数

    目录 一:Nginx代理常用参数 1.添加发往后端服务器的请求头信息 二:参数案例 1.lb01配置文件 2.web01 web02 web服务器 3.测试 4.重启 5.DNS域名解析 6.网址测试 ...

  4. [效果不错] nginx 高并发参数配置及linux内核参数优化,完整的内核优化设置。PHP-FPM高负载解决办法。

    背景:对vps小资源的实践中对,https://justwinit.cn/post/7536/ 的再优化,再实践,再优化,特别是Nginx,PHP,内核: 零)Nginx: error_log /da ...

  5. Weblogic内存溢出及常用参数配置

        http://www.360doc.com/content/14/0306/14/16134804_358216319.shtml 一.WebLogic内存溢出 最近访问量门户访问量突然增大, ...

  6. Nginx之常用基本配置(三)

    前面我们聊了下了Nginx作为WEB服务器对客户端请求相关配置,文件操作优化.Nginx访问控制.basic验证,.状态模块状态页.gzip压缩配置:回顾请参考https://www.cnblogs. ...

  7. Nginx基础 - 常用模块配置

    1.Nginx状态监控http_stub_status_module记录Nginx客户端基本访问状态信息 location /mystatus { stub_status on; access_log ...

  8. [Hive_add_8] Hive 常用参数配置

    0. 说明 记录 Hive 常用参数的配置 1. 设置本地模式 让 Hive 自动使用 Hadoop 的本地模式运行作业,提升处理性能 适合小文件,一般用于测试 set hive.exec.mode. ...

  9. logback 常用参数配置详解

    logback 常用配置详解(二) <appender> <appender>: <appender>是<configuration>的子节点,是负责写 ...

  10. Nginx之常用基本配置

    上一篇博客我们大概介绍了一下nginx,nginx的架构,nginx编译安装和nginx命令的用法,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/1236680 ...

随机推荐

  1. Oracle的去重函数 distinct

    原贴地址:http://www.cnblogs.com/rainman/archive/2013/05/03/3058451.html#m0 SQL中distinct的用法   1.作用于单列 2.作 ...

  2. The Secret Life of Types in Swift

    At first glance, Swift looked different as a language compared to Objective-C because of the modern ...

  3. day005-python基础数据类型之课后作业讲解

    1.元素的分类 需求:有如下集合[11,22,33,44,55,66,77,88,99,90……],将所有大于66的值保存在字典的第一个key中,将小于66的值保存在第二个key的值中 代码实现: # ...

  4. (13)使用python+flask实现树莓派的WEB控制

    https://blog.csdn.net/qq_34803821/article/details/86240096 如果你想在网页上点击按钮,并且让树莓派接收到响应,并做响应的处理,实现网页上与树莓 ...

  5. rhce备战笔记

    1)配置selinuxvim /etc/slinux/config    SELINUX=enforcingsetenforce 1getenforce两台都做 2)配置SSHvim /etc/ssh ...

  6. Java验证jwt token

    https://jwt.io/ RS256加密JWT生成.验证 https://blog.csdn.net/u011411069/article/details/79966226 How to loa ...

  7. Vuejs组件基础

    一.概念 ①组件就是对局部视图的封装,组件思想就是把一个很大的复杂的 Web 页面视图给拆分成一块一块的组件视图,然后利用某种特定的方式把它们组织到一起完成完整的 Web 应用构建. ②目前主流的前端 ...

  8. YY天气使用

    前言: 需要使用http获取天气数据,本节说明调用YY天气的http接口获取天气数据 注册: http://www.yytianqi.com/ 登录注册的邮箱验证 验证完成以后: 获取的数据信息: { ...

  9. 【JZOJ6231】【20190625】等你哈苏德

    题目 有\(m\)条线段,每条线段为\([l_i,r_i]\),每条线段可以是黑/白色 有些线段已经被染色,有些需要被确定颜色 询问是否存在一种染色方案,使得对于每一个位置\(i\),覆盖它的线段黑白 ...

  10. redis里能不能针对set数据的每个member设置过期时间

    不能.可以用sorted set,把要过期的member和key的信息放在sorted set的member里,把过期时间放在score中.跑个任务用zrangebyscore遍历就行了.用sorte ...