helloiac 发表于 2013-10-25 18:03

nginx 如何记录所有的POST数据

如何在log日志中记录下站内所有的POST数据
貌似有个ngx _lua模块,但是看了半天没看懂怎么回事

用了content_by_lua 'request_body = ngx.var.request_body';
数据传递给request_body,然后在把request_body记录到日志中
POST的数据也能记录下来,但是访问某些页面会变成download一个空白页面。
求解

helloiac 发表于 2013-10-28 11:21

自己顶一下

helloiac 发表于 2013-10-28 15:57

location ~ \.php$ {
            fastcgi_pass unix:/dev/shm/php-fpm.sock;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME /home/www/aaa/$fastcgi_script_name;
            include fastcgi_params;
            include fastcgi.conf;
            if ($request_method = POST) {
                        lua_need_request_body on;
                        content_by_lua 'ngx.log(ngx.ERR,ngx.var.request_body)';}
             }
目前这样配置,能够在error.log中记录下POST data,但是在页面上点击提交后,会出来一个下载页,且下载后里面的内容为空
求大神
页: [1]
查看完整版本: nginx 如何记录所有的POST数据