我的理解Openresty = Nginx + ngxhttp_lua_module + lua_resty*;它是一个原生Nginx合上一个HTTP_LUA模块,在加上一系列Lua_resty模块组成的一个Ngx_Lua高性能服务生态。
Openresty处理HTTP请求的执行阶段
- set_by_lua
- content_by_lua
- rewrite_by_lua
- access_by_lua
- header_filter_by_lua
- log_by_lua
有同学会发现,Openresty所提供的LUA解析指令还有以下两个:
- init_by_lua
- init_worker_by_lua
作用在配置加载阶段,init_worker_by_lua
作用在worker进程初始化阶段,并非HTTP请求处理阶段。
logs/development-error.log截取
set_by_lua:1: =======>set
rewrite_by_lua(development-nginx.conf:31):1: =======>rewrite
header_filter_by_lua:1: =======>header_filter
body_filter_by_lua:1: =======>body_filter
body_filter_by_lua:1: =======>body_filter
body_filter_by_lua:1: =======>body_filter
body_filter_by_lua:1: =======>body_filter
log_by_lua(development-nginx.conf:35):1: =======>log while logging request