当前位置: 首页 > news >正文

nginx-lua模块处理流程

一.  简述:

  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: 会话完成后本地异步完成日志记录(日志可以记录在本地,还可以同步到其他机器)。
 

http://www.lryc.cn/news/520294.html

相关文章:

  • 【大数据】机器学习-----最开始的引路
  • 【前端】自学基础算法 -- 21.图的广度优先搜索
  • ChatGPT与Claude AI:两大生成式对话模型的比较分析
  • 前端开发:盒子模型、块元素
  • 升级 CentOS 7.x 系统内核到 4.4 版本
  • 播放音频文件同步音频文本
  • springboot使用Easy Excel导出列表数据为Excel
  • day07_Spark SQL
  • 高性能现代PHP全栈框架 Spiral
  • LeetCode - #182 Swift 实现找出重复的电子邮件
  • 《解锁鸿蒙Next系统人工智能语音助手开发的关键步骤》
  • 【Linux网络编程】数据链路层 | MAC帧 | ARP协议
  • 《自动驾驶与机器人中的SLAM技术》ch7:基于 ESKF 的松耦合 LIO 系统
  • 基于spingbott+html+Thymeleaf的24小时智能服务器监控平台设计与实现
  • 全栈面试(一)Basic/微服务
  • python安装完成后可以进行的后续步骤和注意事项
  • [Qt] 窗口 | 菜单栏MenuBar
  • [读书日志]从零开始学习Chisel 第十三篇:Scala的隐式参数与隐式转换(敏捷硬件开发语言Chisel与数字系统设计)
  • CMake学习笔记(1)
  • cursor+deepseek构建自己的AI编程助手
  • Kotlin实现DataBinding结合ViewModel的时候,提示找不到Unresolved reference: BR解决方案
  • java项目启动时,执行某方法
  • 详解如何自定义 Android Dex VMP 保护壳
  • Grails应用http.server.requests指标数据采集问题排查及解决
  • 开源临床试验软件OpenClinica的安装
  • 网络安全 | 网络安全法规:GDPR、CCPA与中国网络安全法
  • 深入学习 Python 爬虫:从基础到实战
  • element plus 使用 upload 组件达到上传数量限制时隐藏上传按钮
  • 音频DSP的发展历史
  • 2025低代码与人工智能AI新篇