Nginx如何获取当前上游的ip和端口

时间:2015-03-31 12:28:38

标签: nginx lua openresty

我使用Nginx-Lua框架,在日志阶段,我想获取当前请求的上游ip包含端口,在本指南中,显示upstream_addr是类似的,但它是所有上游服务器的种类,而不是当前的服务器,如果我想获得当前服务器,我该怎么办?

1 个答案:

答案 0 :(得分:2)

$upstream_addr将返回上游地址,可能只有一个或类似的内容:192.168.1.1:80, 192.168.1.2:80, unix:/tmp/sock。您可以用逗号分隔返回值:

local addrs = _.split(ngx.var.upstream_addr, ',') -- underscore.lua
if #addrs > 0 then
    ngx.log(ngx.ERR, addrs[#addrs]) -- upstream address you want.
end