nginx中ngx.unescape_uri()函数会将+字符转成空格,由于该现象会可能导致一些字符串匹配问题。

请求路径

调用ngx.var.request_uri前

调用ngx.var.request_uri后

 curl -vv -L ww.test.com/   /  > /dev/null

/,

/,

curl -vv -L ww.test.com/+++  > /dev/null

/+++

/

curl -vv -L ww.test.com/a++b  > /dev/null

/a++b

/a b

curl -vv -L ww.test.com/***  > /dev/null

/***

/***

curl -vv L ww.test.com/---  > /dev/null

/---

/---

 curl -vv -L ww.test.com/%%%  > /dev/null

 

 

curl -vv -L ww.test.com/css/newInfo.css?+++  > /dev/null

/css/newInfo.css?v=+++

/css/newInfo.css?v=