q2009a06z22 发表于 2018-11-11 06:39:24

Nginx模块和请求处理流程简介

  Nginx由内核和模块组成的,其中内核完成的工作比较简单,仅仅通过查找配置文件见客户端请求映射到一个location block,然后又这个location block中所配置的每个指令将会启动不同的模块去完成相应的工作。
  一、nginx模块
  (1)从结构上nginx分为核心模块,基础模块和第三方模块,例如
  HTTP模块、MAIL模块、EVENT模块属于核心模块;
  HTTP ACCESS模块、HTTP REWRITE模块、HTTP FastCGI模块、HTTP PROXY模块属于基础模块;
  HTPP UPSTREAM REQUEST HASH模块属于第三方模块;
  (2)从功能上分为HANDLERS、PROXIES、FILTERS三类
  HANDLERS只能有一个,它直接处理请求并进行输出内容和修改HEADERS信息等操作;
  PROXIES这些模块主要与后端一些服务比如real server等进行交互,实现服务代理和负载均衡等功能;
  FILTERS模块主要是对输出的内容进行修改,最后由Nginx输出;
  二、nginx模块常规处理HTTP请求和响应的过程,见下图


页: [1]
查看完整版本: Nginx模块和请求处理流程简介