• 推荐 0 推荐
  • 收藏 3 收藏,839 浏览

nginx的if支持=!= 逻辑比较, 但不支持if中 <<>=<= 比较.
本示例使用了set-misc-nginx-module

location = /test/ {
default_type html;
set_random $a 0 9; #$a 随机 从0-9取
if ( $a <= 4 ){ #$a 如果 < 4 这是错误的写法
echo 'a: $a is lte 4';
}
if ( $a >= 5 ){ #$a 如果 > 5 这是错误的写法
echo 'a: $a is gte 5';
}
}

上面的配置, 在启动nginx时会报错误的.

即然不支持,那有没有办法小小地弥补下呢?

location = /test/ {
default_type html;
set_random $a 0 9; #$a 随机 从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';
}
}

测试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
...

骚年, 速度加入A.R.G.U.S.网络安全小组, 跟老夫们一起学nginx吧~

NGINX的奇淫技巧 —— 6. IF实现数学比较功能 (1)的更多相关文章

  1. NGINX的奇淫技巧 —— 5. NGINX实现金盾防火墙的功能(防CC)

    NGINX的奇淫技巧 —— 5. NGINX实现金盾防火墙的功能(防CC) ARGUS 1月13日 发布 推荐 0 推荐 收藏 2 收藏,1.1k 浏览 文章整理中...... 实现思路 当服务器接收 ...

  2. NGINX的奇淫技巧 —— 3. 不同域名输出不同伺服器标识

    NGINX的奇淫技巧 —— 3. 不同域名输出不同伺服器标识 ARGUS 1月13日 发布 推荐 0 推荐 收藏 6 收藏,707 浏览 大家或许会有这种奇葩的需求...要是同一台主机上, 需要针对不 ...

  3. 优化DP的奇淫技巧

    DP是搞OI不可不学的算法.一些丧心病狂的出题人不满足于裸的DP,一定要加上优化才能A掉. 故下面记录一些优化DP的奇淫技巧. OJ 1326 裸的状态方程很好推. f[i]=max(f[j]+sum ...

  4. 12个实用的 Javascript 奇淫技巧

    这里分享12个实用的 Javascript 奇淫技巧.JavaScript自1995年诞生以来已过去了16个年头,如今全世界无数的网页在依靠她完成各种关键任务,JavaScript曾在Tiobe发布的 ...

  5. Zepto源码分析(二)奇淫技巧总结

    Zepto源码分析(一)核心代码分析 Zepto源码分析(二)奇淫技巧总结 目录 * 前言 * 短路操作符 * 参数重载(参数个数重载) * 参数重载(参数类型重载) * CSS操作 * 获取属性值的 ...

  6. javascript之奇淫技巧

    最近准备面试,复习一下javascript,整理了一些javascript的奇淫技巧~ //为兼容ie的模拟Object.keys() Object.showkeys = function(obj) ...

  7. Gradle更小、更快构建APP的奇淫技巧

    本文已获得原作者授权同意,翻译以及转载原文链接:Build your Android app Faster and Smaller than ever作者:Jirawatee译文链接:Gradle更小 ...

  8. BZOJ 3192: [JLOI2013]删除物品 奇淫技巧&树状数组

    点我看题 这题十分奇淫技巧...QAQ因为知道是树状数组的题QAQ刚开始以为维护两个数组的树状数组然后模拟从大到小,然后发现不会打QAQ 于是悄悄咪咪翻开题解了. 实际上两个数组可以看做一个数组 如 ...

  9. JavaScript 系列--JavaScript一些奇淫技巧的实现方法(二)数字格式化 1234567890转1,234,567,890;argruments 对象(类数组)转换成数组

    一.前言 之前写了一篇文章:JavaScript 系列--JavaScript一些奇淫技巧的实现方法(一)简短的sleep函数,获取时间戳 https://www.mwcxs.top/page/746 ...

随机推荐

  1. js 设置 获取css样式

    先看一段代码,为了体现一会下面说的js用style获取css样式的不同 一:给div设置margin-left(用style设置css样式没什么问题) box.style.marginLeft=&qu ...

  2. C# 枚举操作扩展类

    using System; using System.Linq; using System.ComponentModel; namespace Demo.Common { /// <summar ...

  3. VmodCAM图像采集 VGA显示

    先上图 总体框图 效果图 效果不是很好,因为暂时用的是zedboard自带的VGA,其只能RGB只有3*3*3的彩色度 VmodCAM原理图 VmodCAM的zedboard管脚约束见:http:// ...

  4. Linux操作杂记

    centos7修改默认运行等级 查看当前默认运行等级: systemctl get-dafault 修改默认运行等级为5: systemctl set-default graphical.target ...

  5. webview的弹性布局之rem,em

    webview页面的自适应一般有两种方法,即一是JS的计算方法,二是通过css的media设置分档方式.在此主要介绍css的方式. html { font-size: 16px; } @media o ...

  6. js中substring和substr的用法比较

    推荐使用substring 方法   stringObject.substring(start,stop)   stringObject.substr(start,length)   定义和用法 提取 ...

  7. ZK framework on Java

    Quick start: https://www.zkoss.org/documentation Live demo: https://www.zkoss.org/zkdemo/file_handli ...

  8. SpringUtil

    /** SpringUtil.java {{IS_NOTE Purpose: Description: History: Thu Jun 1 13:53:53 2006, Created by hen ...

  9. Python流程控制

    if语句: --Pyhon中的IF跟其他语言类似,if包含一个逻辑表达式,使用表达式比较,在比较的结果的基础上做出判断 --if expression: statement(s) 注意:Python使 ...

  10. Splitter

    <!DOCTYPE html> <html> <head> <title>PDemo</title> </head> <b ...