问题在于,当使用 tcp 模式时,Lua脚本不会记录/打印主机,路径,只会记录/打印ip。如果我将模式更改为 http ,它会打印/输出所有内容,但我需要在tcp模式下使用它。有人可以帮我解决这个问题吗?
这是我的HAProxy配置文件的外观:
frontend RTMP
bind 0.0.0.0:1935
mode tcp
use_backend %[lua.choose_backend("d")]
backend a
balance roundrobin
mode tcp
server origin_1 192.168.1.19:1935 check fall 3 rise 2
backend b
balance roundrobin
mode tcp
server origin_1 192.168.1.20:1935 check fall 3 rise 2
这就是我的Lua脚本:
function my_hash(txn, salt)
local str = ""
str = "HOST: " .. txn.sf:req_fhdr("host")
str = str .. " PATH: "
str = str .. txn.sf:path()
str = str .. " SRC: "
str = str .. txn.sf:src()
core.log(core.info, str)
return 'a'
end
core.register_fetches("choose_backend", my_hash)
我只是想要获取uri和路径......这么简单的事情