Nginx中IF語(yǔ)句實(shí)現(xiàn)數(shù)學(xué)比較功能
nginx的if支持=、!= 邏輯比較, 但不支持if中 <、<、>=、<= 比較.
本示例使用了set-misc-nginx-module
location = /test/ {
default_type html;
set_random $a 0 9; #$a 隨機(jī) 從0-9取
if ( $a <= 4 ){ #$a 如果 < 4 這是錯(cuò)誤的寫法
echo 'a: $a is lte 4';
}
if ( $a >= 5 ){ #$a 如果 > 5 這是錯(cuò)誤的寫法
echo 'a: $a is gte 5';
}
}
上面的配置, 在啟動(dòng)nginx時(shí)會(huì)報(bào)錯(cuò)誤的.
即然不支持,那有沒有辦法小小地彌補(bǔ)下呢?
location = /test/ {
default_type html;
set_random $a 0 9; #$a 隨機(jī) 從0-9取
if ( $a ~ [0-4] ){ #$a 如果 正則匹配 0-4
echo 'a: $a is lte 4';
}
if ( $a ~ [5-9] ){ #$a 如果 正則匹配 5-9
echo 'a: $a is gte 5';
}
}
測(cè)試10次:
a: 8 is gte 5
a: 9 is gte 5
a: 2 is lte 4
a: 1 is lte 4
a: 8 is gte 5
a: 0 is lte 4
a: 9 is gte 5
a: 1 is lte 4
a: 4 is lte 4
a: 5 is gte 5
...
附:NGINX竟然不支持這樣的寫法....
location = /test/ {
default_type html;
set_random $a 0 9; #$a 隨機(jī) 從0-9取
set_random $b 0 9; #$b 隨機(jī) 從0-9取
set $ereg "[0-$b]";
if ( $a ~ $ereg ){ #$a 如果 正則匹配 0-$b
echo 'a: $a is lte b: $b ereg: $ereg';
}
if ( $a !~ $ereg ){ #$a 如果 正則不匹配 0-$b
echo 'a: $a is gt b: $b ereg: $ereg';
}
}
求大牛來(lái)實(shí)現(xiàn)...
相關(guān)文章
Nginx緩存文件與動(dòng)態(tài)文件自動(dòng)均衡的配置腳本
Nginx (engine x) 是一個(gè)高性能的HTTP和反向代理服務(wù),也是一個(gè)IMAP/POP3/SMTP服務(wù)。這篇文章主要介紹了Nignx緩存文件與動(dòng)態(tài)文件自動(dòng)均衡的配置,需要的朋友可以參考下2018-09-09Nginx服務(wù)器設(shè)置網(wǎng)站驗(yàn)證訪問的方法
這篇文章主要介紹了Nginx服務(wù)器設(shè)置網(wǎng)站驗(yàn)證訪問的方法,通過設(shè)置密碼來(lái)要求登錄網(wǎng)站目錄的用戶進(jìn)行驗(yàn)證,需要的朋友可以參考下2015-07-07HipChat上傳文件報(bào)未知錯(cuò)誤的原因分析及解決方案
HipChat的功能類似于Campfire、Sazneo等在線協(xié)同工具,并且和Yammer以及Salesforce的Chatter等企業(yè)社交平臺(tái)有一定相似之處。你可以為單個(gè)項(xiàng)目或者小組搭建自有的聊天室,也可以很方便的發(fā)起一對(duì)一聊天2016-01-01詳解nginx rewrite和根據(jù)url參數(shù)location
本篇文章主要是介紹了nginx rewrite和根據(jù)url參數(shù)location,有興趣的同學(xué)可以了解以下。2016-11-11nginx添加http_ssl_module并且配置域名指定端口的操作方法
這篇文章主要介紹了nginx添加http_ssl_module并且配置域名指定端口的操作方法,文末附帶linux下防火墻和開放端口,需要的朋友可以參考下2023-11-11Nginx轉(zhuǎn)發(fā)丟失cookie表現(xiàn)形式及解決方案
本文主要介紹了Nginx轉(zhuǎn)發(fā)丟失cookie表現(xiàn)形式及解決方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01