nginx记录响应与POST请求日志

nginx的日志通过调整log_format格式可以记录所有请求信息

回答群里盆友一个问题 
nginx 日志,可以记录post的参数吗?

答:可以实现,通过设置log_format指令的参数。

log_format指令是用来控制nginx如何记录http请求。

默认的nginx记录日志格式是注释掉的,如果要记录额外的信息,需要自定义log_format格式。 
log_format的参数都是nginx内嵌变量,具体含义详见nginx内置变量 
默认日志格式

#log_format main '$remote_addr - $remote_user [$time_local] "$request" '# '$status $body_bytes_sent "$http_referer" '# '"$http_user_agent" "$http_x_forwarded_for"';

记录post请求参数的日志格式

log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                '"$http_referer" $status $body_bytes_sent $request_body '
                '"$http_user_agent" "$http_x_forwarded_for"';

其实就是增加$request_body字段到log_format里。 
如果为了调试程序可以打开开该字段,不然不推荐记录,以免泄露信息给恶意攻击者。


你可能感兴趣的:(request,记录,如何,信息)