-1

我编译了 nginx 'echo-nginx-module' 模块来记录请求正文。我的目标是记录所有进入 nginx 的流量并将其反向代理到另一个 DNS。我正在使用 proxy_pass 将流量重定向到第二个 DNS,并且它成功开始记录流量主体。但是,缺少的是我还需要记录流量标头和时间戳。我已将以下几行添加到 proxy_pass 配置文件中,它似乎没有记录标题。我错过了什么?

location / {

    # the below four lines do not log header and body
    echo "headers are:"
    echo $echo_client_request_headers;
    echo_read_request_body;
    echo $request_body;

    # this works and logs traffic envelope
    proxy_pass https://offexserver-test-internal.leapaws.com.au;
    root   html;
    index  index.html index.htm;
}
4

1 回答 1

0

你应该做这样的事情

http {
  log_format custom '$request_body';

  server {    
    server_name default_server;
    listen 80;
    location / {
      echo_read_request_body;
    }      
  }
}

您无法记录所有标头,您唯一能做的就是单独指定要记录的标头。或者您将不得不使用附加模块来配置标头。

于 2018-09-20T08:11:31.840 回答