7
从$ request_body记录POST数据
我的配置设置可以处理一堆GET请求,这些请求使像素能够很好地处理分析并解析查询字符串以进行记录。通过附加的第三方数据流,我需要处理对给定URL的POST请求,该给定URL在其请求正文中具有预期的可记录格式的JSON。我不想与辅助服务器一起使用,proxy_pass而只想像响应GET请求一样将整个响应记录到关联的日志文件中。我正在使用的一些代码片段如下所示: GET请求(效果很好): location ^~ /rl.gif { set $rl_lcid $arg_lcid; if ($http_cookie ~* "lcid=(.*\S)") { set $rl_lcid $cookie_lcid; } empty_gif; log_format my_tracking '{ "guid" : "$rl_lcid", "data" : "$arg__rlcdnsegs" }'; access_log /mnt/logs/nginx/my.access.log my_tracking; rewrite ^(.*)$ http://my/url?id=$cookie_lcid? redirect; } 这是我想要做的事情:POST请求(不起作用): location /bk { log_format bk_tracking $request_body; access_log /mnt/logs/nginx/bk.access.log bk_tracking; } 冰壶curl http://myurl/bk …