Nginx学习笔记24Nginx定制开发之基础知识

1.1.1. Nginx种类布局

上边包车型客车Nginx种类布局图来自以下网站:

http://www.aosabook.org/en/nginx.html

 ACCESS 1

 

1.1.2. Nginx处理HTTP请求的11个阶段

Nginx处理HTTP请求的拾一个阶段如下所示,每种阶段依照顺序依次执行,种种阶段能够有二个或多少个HTTP处理模块实行处理。

 

 (1) NGX_HTTP_POST_READ_PHASE

   在Nginx读取到完整的HTTP Headers后的拍卖阶段。

 

 (2)NGX_HTTP_SERVER_REWRITE_PHASE

   在将呼吁USportageL与location匹配在此之前的重定向。

 

  (3)NGX_HTTP_FIND_CONFIG_PHASE

   依照U奥迪Q7L寻找匹配的location。

   

  (4)NGX_HTTP_REWRITE_PHASE

   找到location后,根据location的布署进行重定向。

 

  (5)NGX_HTTP_POST_REWRITE_PHASE,

   在重定向后用于幸免出现重定向的死循环,拾贰回重定向后报500荒谬。

 

  (6)NGX_HTTP_PREACCESS_PHASE,

   在授权访问控制从前的等级。

 

   (7)NGX_HTTP_ACCESS_PHASE,

   授权访问控制阶段,决定是还是不是能访问U昂科威L

 

(8)NGX_HTTP_POST_ACCESS_PHASE,

在授权访问控制做出决定后,发送决绝服务的多少。

 

(9)NGX_HTTP_TRY_FILES_PHASE,

try_files访问静态能源的阶段。

 

(10)NGX_HTTP_CONTENT_PHASE,

拍卖HTTP请求的始末,开发第1方自定义模块时常用的等级。

 

(11)NGX_HTTP_LOG_PHASE

拍卖完请求后记录走访日志。

 

 

1.1.3. Nginx处理HTTP请求的干活流程

Nginx处理客户端请求的流程如下所示:

 

(1)客户端发送HTTP请求。

(2)Nginx选拔适当的等级处理器。

(3)负载均衡处理器选取3个上游主机。

(4)阶段处理器暴发响应数据

(5)阶段处理器将响应数据传递给第②个过滤器。

(6)第贰个过滤依次将响应数据传递给末端的过滤器。

(7)最后响应数据发送给客户端。

 

 

1.1.4. Nginx的模块

Nginx有以下两种模块类型:

(a)事件模块(event module):

Nginx的事件处理机制,包含ngx_evens_module、ngx_event_core_ACCESS,module和ngx_epoll_module等模块。

(b)阶段处理模块(phase handler):

拍卖客户端请求和产生响应内容。

(c)过滤模块(output filter):

对响应内容实行拍卖,比如修改响应内容,可实现数据压缩等效果。

(d)上游主机代理模块(upstream):

兑现行反革命向代理效率。

(e)负载均衡模块(load balancer):

依照内定的选拔策略,从几个上游主机中甄选一个来响应客户端的呼吁。

 

Nginx完整的支付指南请参考:

http://nginx.org/en/docs/dev/development\_guide.html

 

相关文章