ngx.req.get_body_data, ngx.req.get_body_file, ngx.var.request_body возвращают nil.
server {
listen 80;
server_name _;
location / {
# client_body_buffer_size 50M;
# client_max_body_size 50M;
proxy_request_buffering off;
proxy_http_version 1.1;
client_max_body_size 0;
# lua_need_request_body on;
proxy_pass http://localhost:8000;
access_by_lua_block {
ngx.req.read_body()
local body = ngx.req.get_body_data()
--local body = ngx.req.get_body_file()
--local body = ngx.var.request_body
if body then
ngx.log(ngx.STDERR, "THERE BODY")
body = ngx.re.gsub(body, "string1", "string2")
ngx.req.set_body_data(body)
else
ngx.log(ngx.STDERR, "NO BODY")
end
}
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/local/openresty/nginx/html;
}
}
Я получаю "NO BODY" когда я пытаюсь открыть страницу localhost. Я пробовал
local body = ngx.req.get_body_file()
и
local body = ngx.var.request_body
и получил тот же результат.
Что я делаю не так или это баг?
nginx version: openresty/1.21.4.1