Nginx if语句加正则表达式实现字符串截断
在给大家讲述这个问题之前,先给大家看一段nginx配置.我们用到了set-misc-nginx-module
location/test/{
default_typetext/html;
set_md5$hash"secret"$remote_addr;
echo$hash;
}
这样输出来的内容,可能是下面这样的
202cb962ac59075b964b07152d234b70
但如果我们要截取某几位字符怎么办呢?
首先大家想到的肯定是使用模块来实现,但只能这样吗?有没有更方便的方式呢?
有的.
我们可以巧妙地使用if+正则表达式来实现这个小需求:
location/test/{
default_typetext/html;
set_md5$hash"secret"$remote_addr;
if($hash~^[\w][\w][\w][\w][\w][\w][\w][\w]([\w][\w][\w][\w][\w][\w][\w][\w])){
set$hash$1;
}
echo$hash;
}
访问/test/输出的就是:
ac59075b
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短