nginx 的请求处理阶段
nginx处理的11个阶段

nginx处理用户请求的流程
接收用户请求头部之后
1 .匹配对应得location
2.是否进行限速
3.验证用户是否有权限访问该资源;和判断是否是盗链的请求
4.生成用户的响应报文
5.为了生成用户响应报文,可能作为代理服务需要向后端主机发送请求
6.给用户返回请求时要经过过滤模块,进行一些过滤处理如压缩等
7.在发送给用户响应时也会记录一条访问日志
nginx的处理用户请求的11 个阶段
1.个阶段POST_READ:这个阶段由realip这个模块处理;获取一些请求的原始值
2个阶段SERVER_REWRITE:这个阶段由rewrite这个模块处理
3个阶段FIND_CONFIG : 这个阶段由nginx的框架处理;做location的匹配
4个阶段REWRITE: 这个阶段由rewrite这个模块处理
5POST_REWRITE:
6PREACCESS:这个阶段由limt_conn与limit_req模块处理:在判断连接和处理请求的限制,如连接并发数量已经达到最高值limt_conn,或处理的请求数量已经达到limit_req
7.ACCESS:阶段是由auth_basic,access,auth_request;解决能不能访问资源的如用户名密码auth_basic是这个模块处理的,用户的IP是否可以访问时access模块处理的,auth_request 调第三方服务判断用户是否可以访问
8.POST_ACCEPT
9.PRECONTENT:这个阶段是由try_files模块处理
10.CONTENT :这个阶段是由index,autoindex,concat 模块处理;反向代理阶段等等
11. LOG:access_log记录日志
11个阶段处理顺

nginx 的请求处理阶段的更多相关文章
- nginx的请求处理
nginx的请求处理¶ nginx使用一个多进程模型来对外提供服务,其中一个master进程,多个worker进程.master进程负责管理nginx本身和其他worker进程. 所有实际上的业务 ...
- nginx系列5:nginx的请求处理流程
nginx的请求处理流程 如下图: nginx可以处理来自web(http),Email,TCP/UDP的三类请求. nginx底层使用非阻塞的事件驱动引擎,结合状态机来完成异步通知,其中处理Http ...
- Nginx 的请求处理流程,你了解吗?
之前我们已经讲解了 Nginx 的基础内容,接下来我们开始介绍 Nginx 的架构基础. 为什么我们要讨论 Nginx 的架构基础? 因为 Nginx 运行在企业内网的最外层也就是边缘节点,那么他处理 ...
- PHP+FastCGI+Nginx动态请求处理配置
Nginx不支持对外部程序的调用,所以必须通过FastCGI接口实现对外部程序的调用从而实现对client动态页面请求的处理. CGI的英文全称为Common Gateway Interface(公共 ...
- nginx 的 content阶段的root指令与alias指令
root 与alias指令 Syntax: alias path; Default: — Context: location Syntax: root path; Default: root html ...
- nginx的preaccess 阶段的limit_req模块与limit_conn模块
limit_conn 模块限制并发连接数 [root@python vhast]# vim limit_conn.conf limit_conn_zone $binary_remote_addr zo ...
- nginx 的precontent阶段的ngx_http_try_files_module模块与mirrors模块介绍
指令介绍 Syntax: try_files file ... uri; try_files file ... =code; Default: — Context: server, location ...
- Nginx开发从入门到精通 学习目录分享学习 (阿里著作)
Nginx开发从入门到精通 缘起 nginx由于出色的性能,在世界范围内受到了越来越多人的关注,在淘宝内部它更是被广泛的使用,众多的开发以及运维同学都迫切的想要了解nginx模块的开发以及它的内部 ...
- Nginx 配置指令的执行顺序(一)
大多数 Nginx 新手都会频繁遇到这样一个困惑,那就是当同一个 location 配置块使用了多个 Nginx 模块的配置指令时,这些指令的执行顺序很可能会跟它们的书写顺序大相径庭.于是许多人选择了 ...
随机推荐
- Network - HTTP 可能遇到的状态码
1. 概述 工作中, 会遇到 形形色色 的状态码 虽然这些状态码, 很多都是自定义的, 但是很多的 自定义, 还是有些 约定俗成 的规律 状态 虽然现在发布了, 但是基本算是没有, 还得慢慢补充 2. ...
- VIM - EX 命令 - 文件读写
VIM - EX 命令 - 文件读写 1. 概述 vim 通过 ex 命令行, 与其他文件的读写操作 2. 场景 场景1 vim 打开文本 将当前文本的内容, 写入到其他文本 场景2 vim 打开文本 ...
- IDF-CTF-简单的Elf逆向Writeup
ElfCrackMe1 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !imp ...
- Python中的参数解包:`*`表达式和 `**`表达式
目录 1.参数解包:方法调用中的*表达式和**表达式 2.参数解包:方法定义中的*表达式和**表达式 3.在元组,列表,集合和字典中解包 4.Extended Unpacking:赋值表达式左边的*表 ...
- easyExcel+poi导出Excel出现乱码
这种问题肯定是浏览器编码问题,修改官方给的util就好了
- acm数论之旅--唯一分解定理
题目: 给出n,问n = b^p中p符合该等式的最大值 分析: 先求出所有n的质因子,然后对这m个质因子分类统计,比如 n = 36时,可以分成 2个2,2个3,然后求出所有这些基数的 最大公因数gc ...
- linux下的apue.3e安装[Unix环境高级编程]
近期正在看<Unix环境高级编程>一书,目前看了20多页,书中 有几个c的例程,于是想着,也让它运行一下,看看是否跟描述相符,做开发人员本应该这样,于是敲了一部分代码,然后编译,发现并不能 ...
- Etcd Learning Notes
官网:https://etcd.io 官方项目地址:https://github.com/etcd-io/etcd 参考资料: https://www.hi-linux.com/posts/40915 ...
- 抽象方法(abstract)
抽象方法:父类当中的方法,不确定如何进行 {} 方法体实现,那么这就是一个抽象方法 例如:动物类:叫{} // 叫方法就是抽象方法,不确定以何种声音叫 格式: 抽象方法:加上 abstract ...
- 架设传奇时打开DBC数据库出错或读取DBC失败解决方法
架设传奇时打开DBC数据库出错或读取DBC失败解决方法 DBC右键-属性-高级-管理员身份运行 即可