Nginx配置編寫(xiě)時(shí)支持邏輯運(yùn)算與大小寫(xiě)字母轉(zhuǎn)換的方法
邏輯運(yùn)算
nginx的配置中不支持if條件的邏輯與&& 邏輯或|| 運(yùn)算 ,而且不支持if的嵌套語(yǔ)法,否則會(huì)報(bào)下面的錯(cuò)誤:nginx: [emerg] invalid condition。
我們可以用變量的方式來(lái)間接實(shí)現(xiàn)。
要實(shí)現(xiàn)的語(yǔ)句:
if ($arg_unitid = 42012 && $uri ~/thumb/){ echo "chabaoo.cn"; }
如果按照這樣來(lái)配置,就會(huì)報(bào)nginx: [emerg] invalid condition錯(cuò)誤。
可以這么來(lái)實(shí)現(xiàn),如下所示:
set $flag 0; if ($uri ~ ^/thumb/[0-9]+_160.jpg$){ set $flag "${flag}1"; } if ($arg_unitid = 42012){ set $flag "${flag}1"; } if ($flag = "011"){ echo "chabaoo.cn"; }
nginx實(shí)現(xiàn)大小寫(xiě)字母轉(zhuǎn)換(ngx_http_lower_upper_case模塊)
各種程序或腳本都有實(shí)現(xiàn)大小寫(xiě)字母互轉(zhuǎn)的功能,今天講講ngx_http_lower_upper_case,功能很簡(jiǎn)單,至于可以用在什么環(huán)境大家可以根據(jù)自己的情況.多一種模塊多一種解決方案.本模塊將字符串轉(zhuǎn)換為大小寫(xiě)然后賦值給變量. 用句俗話來(lái)說(shuō)"存在即合理",軟件存在性總有他存在的道理。
1. 安裝nginx模塊
--add-module=path/to/circle_gif/directory
具體方法就不再講述了,可以參考運(yùn)維生存時(shí)間的<如何安裝nginx第三方模塊>
2.upper/lower 指令
upper
語(yǔ)法:upper $var string
配置段: location
小些轉(zhuǎn)大寫(xiě)
lower
語(yǔ)法:lower $var string
配置段: location
大寫(xiě)轉(zhuǎn)小寫(xiě)
3. nginx配置
location /ttlsa_upper_lower { upper $var1 "Hello,jb51.net"; lower $var2 "HELLO,jb51.net"; echo $var1; echo $var2; }
4. 測(cè)試
# curl http://test.jb51.net/ttlsa_upper_lower/
HELLO,jb51.net hello,jb51.net
nginx模塊地址:https://github.com/replay/ngx_http_lower_upper_case/archive/master.zip
ngx_http_lower_upper_case地址:https://github.com/replay/ngx_http_lower_upper_case
- 詳解Nginx中的geo模塊與利用其配置負(fù)載均衡的示例
- Nginx配置srcache_nginx模塊搭配Redis建立緩存系統(tǒng)
- 詳解Nginx服務(wù)器的nginx-http-footer-filter模塊配置
- 詳解Nginx服務(wù)器中HTTP Headers相關(guān)的模塊配置使用
- 在Nginx中配置image filter模塊來(lái)實(shí)現(xiàn)動(dòng)態(tài)生成縮略圖
- 詳解Nginx的核心配置模塊中對(duì)于請(qǐng)求體的接受流程
- Nginx服務(wù)器中的模塊編寫(xiě)及相關(guān)內(nèi)核源碼初探
- 使用Lua編寫(xiě)Nginx服務(wù)器的認(rèn)證模塊的方法
- Nginx帶寬控制(限速模塊使用)
- php調(diào)用nginx的mod_zip模塊打包ZIP文件
相關(guān)文章
Nginx接收Http協(xié)議請(qǐng)求轉(zhuǎn)發(fā)使用Https協(xié)議的問(wèn)題
這篇文章主要介紹了Nginx接收Http協(xié)議請(qǐng)求轉(zhuǎn)發(fā)使用Https協(xié)議,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06Nginx反向代理轉(zhuǎn)發(fā)tomcat的實(shí)現(xiàn)
本文主要介紹了Nginx反向代理轉(zhuǎn)發(fā)tomcat的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07centos7 docker 修改Nginx文件過(guò)程詳解
這篇文章主要介紹了centos7 docker 修改Nginx文件過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08Nginx+uwsgi+ssl配置https的詳細(xì)步驟
nginx是一個(gè)輕量級(jí)的web服務(wù)器,在處理靜態(tài)資源和高并發(fā)有優(yōu)勢(shì),uwsgi是一個(gè)基于python的高效率的協(xié)議,處理后端和動(dòng)態(tài)網(wǎng)頁(yè)有優(yōu)勢(shì),我這里使用的是Ubuntu18.04版本,服務(wù)器在阿里云,感興趣的朋友跟隨小編一起看看吧2023-10-10Windows環(huán)境下Nginx?服務(wù)器?SSL?證書(shū)安裝部署操作過(guò)程
這篇文章主要介紹了Windows環(huán)境下Nginx?服務(wù)器?SSL?證書(shū)安裝部署,指導(dǎo)您如何在Windows Nginx 服務(wù)器中安裝 SSL 證書(shū),本文給大家講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-10-10