nginx http协议基础及IO模型

Nginx通常作为两种应用,既:

  • Web Server
  • Web Reverse Proxy

做为web服务器最核心的是http协议(全称:HyperText Transfer Procotol)–超文本传输协议,主要用于传输超文本(超文本又称html(HyperText Mark Language)语言开发的文本或者html语言标记的文本)。而HTTP协议默认工作在80端口上。在http1.0之前只支持超文本传输,但是从1.0以后由于引入了MIME(Multipurpost Internet Mail Extension)机制(接受非文本,但能转换城文本格式进行传输,而到客户端时又能还原成原有协议的编码方案)。

互联网上访问一个资源是根据URL标记定义的,其基本语法是:scheme(协议)://server[:port]/path/to/source。

http事务由两部分组成:

  • request

    格式:

    <body>
    
  • response

    格式:

    <HEADERS>
    
    <body>
    

method包括:

  • GET
  • HEADE
  • POST
  • PUT
  • DELETE
  • TRACE
  • OPTIONS

status:

  • 1xx: 信息类
  • 2xx: 成功类
  • 3xx: 重定向 301 302 304
  • 4xx: 客户端错误 404 401
  • 5xx: 502 504

HEADE:

  • 通用首部
  • 请求首部
    If-Modified-Since、IF-None-Match
  • 响应首部
  • 实体首部
  • 扩展首部