如何使用`resty` CLI运行一个有效的OpenResty“nginx.conf”?

gmol1639  于 2023-05-16  发布在  Nginx
关注(0)|答案(1)|浏览(136)

以下摘录来自https://github.com/openresty/lua-resty-core/blob/master/lib/ngx/process.md。如何在不启动OpenResty(Nginx)的情况下使用resty CLI运行代码?每次更新代码片段时,重启/重新加载一个完整的Nginx守护程序是很繁琐的。

# http config
init_by_lua_block {
    local process = require "ngx.process"

    -- enables privileged agent process
    local ok, err = process.enable_privileged_agent()
    if not ok then
        ngx.log(ngx.ERR, "enables privileged agent failed error:", err)
    end

    -- output process type
    ngx.log(ngx.INFO, "process type: ", process.type())
}

init_worker_by_lua_block {
    local process = require "ngx.process"
    ngx.log(ngx.INFO, "process type: ", process.type())
}

server {
    # ...
    location = /t {
        content_by_lua_block {
            local process = require "ngx.process"
            ngx.say("process type: ", process.type())
            ngx.say("master process pid: ", process.get_master_pid() or "-")
        }
    }
}
isr3a4wc

isr3a4wc1#

我不知道resty-工具,但是:
作为使用_block指令的替代方法,您可以切换到使用文件。对我来说,文件总是更有意义,因为更清晰的结构,更好的突出显示。
然后,您可以禁用lua文件缓存(Docs),以确保每次请求时都会重新读取lua文件。

相关问题