网站设计过时,淘宝网站详情页怎么做,企业网站小程序源码,临沂网站建设多少钱一. 简述#xff1a; nginx的模块化设计使得每一个http模块可以只专注于完成一个独立的#xff0c;简单的功能。一个请求的完整处理过程可以由多个http模块共同协作完成#xff0c;这种设计具有简单性#xff0c;测试性#xff0c;扩展性#xff0c;灵活性。关于nginx 的…一. 简述 nginx的模块化设计使得每一个http模块可以只专注于完成一个独立的简单的功能。一个请求的完整处理过程可以由多个http模块共同协作完成这种设计具有简单性测试性扩展性灵活性。关于nginx 的处理流程可以参考 nginx-配置指令的执行顺序_nginx配置顺序-CSDN博客 这里只会说明lua模块涉及到的部分。 二. 关于lua 模块处理流程 nginx框架按照常见的处理流程将处理阶段划分为11个阶段其中每个处理阶段又可以由任意多个http模块流水式进行请求处理开发者可以很容易分辨咨询需要开放的模块应该定义在什么阶段。而lua模块涉及到其中的8个阶段。
init_by_lua http set_by_lua server, server if, location, location if rewrite_by_lua http, server, location, location if access_by_lua http, server, location, location if content_by_lua location, location if header_filter_by_lua http, server, location, location if body_filter_by_lua http, server, location, location if log_by_lua http, server, location, location if 简述 set_by_lua: 流程分支处理判断变量初始化 rewrite_by_lua: 转发、重定向、缓存等功能(例如特定请求代理到外网) access_by_lua: IP准入、接口权限等情况集中处理(例如配合iptable完成简单防火墙) content_by_lua: 内容生成 header_filter_by_lua: 应答HTTP过滤处理(例如添加头部信息) body_filter_by_lua: 应答BODY过滤处理(例如完成应答内容统一成大写) log_by_lua: 会话完成后本地异步完成日志记录(日志可以记录在本地还可以同步到其他机器。