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反向代理配置及优化,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • Nginx配置优化详解

    Nginx配置优化详解

    如果你已经安装过Nginx并在生产环境中使用,那么Nginx配置优化你一定也要做,这样才能看到Nginx性能,本文就从基本配置优化开始到高层配置教你如何优化Nginx
    2013-11-11
  • Nginx配置srcache_nginx模块搭配Redis建立缓存系统

    Nginx配置srcache_nginx模块搭配Redis建立缓存系统

    这篇文章主要介绍了Nginx配置srcache_nginx模块搭配Redis建立缓存系统的方法,文中关于Nginx模块和Redis数据库的安装就不再说明了,这里只关注配置搭建阶段,需要的朋友可以参考下
    2016-01-01
  • Nginx的信号控制

    Nginx的信号控制

    今天小编就为大家分享一篇关于Nginx的信号控制,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • docker nginx实现一个主机部署多个站点操作

    docker nginx实现一个主机部署多个站点操作

    这篇文章主要介绍了docker nginx实现一个主机部署多个站点操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • Nginx服务器安装及配置文件与使用详解

    Nginx服务器安装及配置文件与使用详解

    这篇文章主要介绍了Nginx服务器安装及配置文件与使用详解 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • nginx缓存不起作用问题解决方法

    nginx缓存不起作用问题解决方法

    nginx代理做好了,缓存也配置好了,但是发现css、js、jpg这些静态文件统统都cached成功。但是偏偏页面文件依旧到源服务器取
    2014-04-04
  • Nginx 介绍及日常管理的详解

    Nginx 介绍及日常管理的详解

    这篇文章主要介绍了Nginx 介绍及日常管理的详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-10-10
  • CentOS 6.3安装配置Nginx方法

    CentOS 6.3安装配置Nginx方法

    这篇文章主要介绍了CentOS 6.3安装配置Nginx方法,需要的朋友可以参考下
    2014-11-11
  • nginx安装图解_动力节点Java学院整理

    nginx安装图解_动力节点Java学院整理

    这篇文章主要为大家详细介绍了nginx安装的图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08

最新评论