Nginx配置编写时支持逻辑运算与大小写字母转换的方法

 更新时间:2016年01月27日 15:56:16   投稿:goldensun  
这篇文章主要介绍了Nginx配置编写时支持逻辑运算与大小写字母转换的方法,其中大小写字母转换是以lower upper case模块来实现,需要的朋友可以参考下

逻辑运算
nginx的配置中不支持if条件的逻辑与&& 逻辑或|| 运算 ,而且不支持if的嵌套语法,否则会报下面的错误:nginx: [emerg] invalid condition。
我们可以用变量的方式来间接实现。
要实现的语句:

if ($arg_unitid = 42012 && $uri ~/thumb/){
 echo "www.jb51.net";
}

如果按照这样来配置,就会报nginx: [emerg] invalid condition错误。
可以这么来实现,如下所示:

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 "www.jb51.net";
}

nginx实现大小写字母转换(ngx_http_lower_upper_case模块)
各种程序或脚本都有实现大小写字母互转的功能,今天讲讲ngx_http_lower_upper_case,功能很简单,至于可以用在什么环境大家可以根据自己的情况.多一种模块多一种解决方案.本模块将字符串转换为大小写然后赋值给变量. 用句俗话来说"存在即合理",软件存在性总有他存在的道理。
1. 安装nginx模块

--add-module=path/to/circle_gif/directory

具体方法就不再讲述了,可以参考运维生存时间的<如何安装nginx第三方模块>
2.upper/lower 指令
upper
语法:upper $var string
配置段: location
小些转大写
lower
语法:lower $var string
配置段: location
大写转小写
3. nginx配置

location /ttlsa_upper_lower {
upper $var1 "Hello,jb51.net";
lower $var2 "HELLO,jb51.net";
echo $var1;
echo $var2;
}

4. 测试

# 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实现静态资源的反向代理实例

    Nginx实现静态资源的反向代理实例

    这篇文章主要介绍了Nginx实现静态资源的反向代理实例,本文通过分析github发现这个应用,可以避免在https的网站中出现http链接,需要的朋友可以参考下
    2015-03-03
  • nginx http 499错误码详解以及解决办法

    nginx http 499错误码详解以及解决办法

    HTTP状态码出现499错误有多种情况,499错误是什么?这篇文章主要给大家介绍了关于nginx http 499错误码以及解决办法的相关资料,文中介绍的非常详细,需要的朋友可以参考下
    2024-01-01
  • Nginx根据url中的path动态转发到upstream的实现

    Nginx根据url中的path动态转发到upstream的实现

    这篇文章主要介绍了Nginx根据url中的path动态转发到upstream的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • nginx配置缓存关闭的实现

    nginx配置缓存关闭的实现

    本文将介绍nginx缓存关闭,以及配置的具体步骤和示例,通过调整Nginx的配置文件,可以确保浏览器不会缓存网站的内容,从而提高网站的安全性和性能
    2023-10-10
  • Nginx 中文域名配置详解及实现

    Nginx 中文域名配置详解及实现

    这篇文章主要介绍了Nginx中 文域名配置详解及实现的相关资料,Nginx虚拟主机上绑定一个带中文域名但是不能跳转,这里给大家说下如何实现,需要的朋友可以参考下
    2016-12-12
  • Nginx日志实现访问异常报警详解

    Nginx日志实现访问异常报警详解

    Nginx把遇到的不同级别的问题信息写到错误日志。error_log 指令配置记录到特定的文件,stderr,或者syslog,配置写到日志的最低级别信息。下面这篇文章主要介绍了利用Nginx日志实现访问异常报警的相关资料,需要的朋友可以参考下。
    2017-03-03
  • Nginx配置Https免费证书访问步骤

    Nginx配置Https免费证书访问步骤

    这篇文章主要为大家介绍了Nginx配置Https免费证书访问步骤,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • 在nginx中使用geoip做区域限制的方法

    在nginx中使用geoip做区域限制的方法

    今天小编就为大家分享一篇在nginx中使用geoip做区域限制的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • nginx gzip 动态静态压缩详解

    nginx gzip 动态静态压缩详解

    这篇文章主要为大家介绍了nginx gzip 动态静态压缩实现详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • Linux服务器下nginx的安全配置详解

    Linux服务器下nginx的安全配置详解

    本篇文章主要介绍了Linux服务器下nginx的安全配置详解,Nginx在很多高流量网站上得到了应用,有需要的朋友可了解一下。
    2016-10-10

最新评论