在nginx日志的access log中记录post请求的参数值

1.使用log_format指令来更改日志格式,该指令只能放在http{}段

log_format 日志名 '日志内容';

server {
access_log /var/log/nginx/default.access.log 日志名;
}

2.$request_body是nginx的内置变量,可以记录post的数据

3.测试

log_format my_test_log escape=json '$request_filename $http_x_forwarded_for $fastcgi_script_name $document_root $request_body';
server {
        access_log  /var/log/nginx/default.access.log  my_test_log;
}

4.其他nginx内置变量

$time_local 格式化的时间
$request 请求地址
$status 响应码
$body_bytes_sent 传送页面的字节数
$http_referer 来源地址
$http_user_agent 客户端UA
$document_root 当前文件的目录绝对地址,比如:/var/www/html
$fastcgi_script_name 当前url的绝对地址,比如:/info.php
$request_filename 当前请求文件的绝对物理地址,基于root和alias指令,比如:/var/www/html/info.php
$http_cookie cookie信息,这个也很重要,如果在cookie中带上了用户的标识,比较方便调试

未经允许不得转载:紫竹林-程序员中文网 » 在nginx日志的access log中记录post请求的参数值

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
关于我们 免责申明 意见反馈 隐私政策
程序员中文网:公益在线网站,帮助学习者快速成长!
关注微信 技术交流
推荐文章
每天精选资源文章推送
推荐文章
随时随地碎片化学习
推荐文章
发现有趣的