启动顺序
post-read 1读取请求内容阶段,nginx读取并解析完请求头之后就立即开始运行;
server-rewrite 2.server请求地址重写阶段;
find-config 3.配置查找阶段,用来完成当前请求与location配重块之间的配对工作;
rewrite 4.location请求地址重写阶段,当ngx_rewrite指令用于location中,就是再这个阶段运行的;
post-rewrite 5.请求地址重写提交阶段,当nginx完成rewrite阶段所要求的内部跳转动作,如果rewrite阶段有这个要求的话;
preaccess 6.访问权限检查准备阶段,ngx_limit_req和ngx_limit_zone在这个阶段运行,ngx_limit_req可以控制请求的访问频率,ngx_limit_zone可以控制访问的并发度;
access 7.权限检查阶段,ngx_access在这个阶段运行,配置指令多是执行访问控制相关的任务,如检查用户的访问权限,检查用户的来源IP是否合法;
post-access 8.访问权限检查提交阶段;
try-files 9.配置项try_files处理阶段;
content 10.内容产生阶段,是所有请求处理阶段中最为重要的阶段,因为这个阶段的指令通常是用来生成HTTP响应内容的;
log 11.日志模块处理阶段;
每一个阶段上能够注冊handler。处理请求就是执行每一个阶段上注冊的handler。Nginx模块提供的配置指令仅仅会一般仅仅会注冊并执行在当中的某一个处理阶段。
比方,set指令属于rewrite模块的,执行在rewrite阶段,deny和allow执行在access阶段。