我想使用响应标头关闭访问日志。
如下组所示。
当有标题时,您不想输出日志。
它不起作用。
server {
listen 80;
server_name localhost;
access_log logs/access_debug.log debug_val_format if=$logging;
set $logging 1;
if ( $upstream_http_logoff ){
set $logging 0;
}
发送响应标头。
Connection:keep-alive
Content-Length:5
Content-Type:text/html; charset=UTF-8
Date:Wed, 11 May 2016 12:04:57 GMT
logoff:1
Server:nginx/1.7.11
X-Powered-By:PHP/5.3.3
答案 0 :(得分:0)
您应该使用map
:
map $upstream_http_logoff $logging {
default 1;
1 0;
}
也许您应该考虑反转上游逻辑,因此更容易理解:
上游标题logging:0
map $upstream_http_logging $logging {
default 1;
0 0;
1 1;
}