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 分别祝福语简短搞笑英文
18 生日广州男生祝福语简短