Nginx条件访问日志不起作用

时间:2018-05-16 10:26:41

标签: nginx access-log nginx-config

我正在尝试使用if语句使nginx的访问日志有条件,但它无效。

这是配置文件中的相关代码。

map $uri $log_access {

    /.lb-check 0;

    default 1;
}

server {
    ...

    access_log /var/log/nginx/access.log combined if=$log_access;

    ...
}

我不希望记录某些请求,在这种情况下,它是负载均衡器向网址/.lb-check

发出的请求

不幸的是,此配置无效

我也尝试过以下操作,但也没有。

location = /.lb-check { access_log off; }

有谁知道为什么这些方法不起作用?

1 个答案:

答案 0 :(得分:0)

这结果是内部构建系统的配置问题但在解决之后我最终使用了map方法,但使用了$request_uri参数

map $request_uri $log_access {

  /.lb-check 0;
  default 1;

}

location = /.lb-check无效,因为它覆盖了对该请求的处理,这意味着没有定义任何服务请求(应该转到php处理程序)。