今天與一友人,爭(zhēng)執(zhí)nginx的if模塊,友人給出的說(shuō)法是當(dāng)其中一個(gè)if判斷匹配,執(zhí)行了if模塊里的內(nèi)容后,就不再執(zhí)行下一個(gè)if模塊,這大大顛覆了我的認(rèn)知,c,java python都不是這么來(lái)的,奈何沒(méi)找到ngx的if模塊的文檔,這里簡(jiǎn)單做了一個(gè)測(cè)試,恩,還是和正常的程序處理邏輯是相同的
#ngx location cfg
server
{
listen 80;
server_name test.vip.com;
location /{
set $a 1;
set $b 2;
set $flag 1;
if ( $a = "1"){
set $flag 1$flag;
}
if ( $b = "2" ){
set $flag 1$flag;
}
return 200 $flag;
}
}
#for test
curl -x "10.199.134.223:80" "http://test.vip.com/"
111
事實(shí)證明,還是遵循正常的變成語(yǔ)言邏輯的;