在访问阶段执行 ngx.exit(401) 后,头部过滤阶段中的 Lua 代码仍然运行
作者: ChnMig创建于 2024年1月22日更新于 2025年12月8日
我在文档中看到,使用 ngx.exit(<200) 会使请求直接返回给客户端,而不会在后续的各个阶段执行 lua 代码,我的同事告诉我这是正确的,我的同事之前使用了一个旧版本的 openrest(似乎是 1.19.X)。但是,我测试了 Linux 版本 1.21.4.3 和 Windows 版本 1.25.3.1,发现即使我在访问阶段执行 ngx.exit(401),仍然会在头部过滤阶段触发 lua 脚本。为什么?我是否使用错了?
内容来源: openresty/lua-nginx-module