nginx 中的内置变量都可以通过 if 指令 + 正则表达式来进行截取,截取之后的结果通过正则表达式的分组来进行引用
比如:从请求中传过来的一个名为 ssl_client_s_dn 的变量,它的值是类似 cn=username这样的
我们想要只留下username ,可以这样:
if ( $ssl_client_s_dn ~ (CN=([\S\s]*)) ){
set $username $2;
}
其中 $2 是指获取正则表达式匹配结果的第二个分组(也就是第二个括号中的内容)