Nginx是支持读取非nginx标准的用户自定义Header的,但是需要在http或者server下开启header的下划线支持,否则方向代理时会过滤掉非标准用户自定的Header;
开启header的下划线支持(nginx.conf下的http或server块内)配置:
underscores_in_headers on;
开启后如果想在日志文件打印自定义的Header来调试数据,则在 log_format 中添加自定义的头即可;
例如,自定义的deveice_info 头,在日志中输出,配置如下:
log_format postdata escape=json '$time_local - $remote_addr - "$request" $http_user_agent \n ' 'device_info:$http_device_info \n' '$request_body \n' '[$status] \t $bytes_sent';
注:一律采用小写,而且前面多了个http_ ;