为什么nginxselect一个不匹配正则expression式的位置块?

在我的nginxconfiguration文件中,我有这个location块(修改用于debugging目的):

 location ~* \.(ico|css|js|gif|jpe?g|png)(\?[0-9]+)?$ { expires 1; log_not_found off; return 515 "Request URI is $request_uri. Caught you"; } 

当我从服务器请求这个URI时: /img/signup/be0e1d34fabf2514d49db9baec09f858.png?w=198&h=198&s=9a7d22504c5ae176a936a0f18cccacba

果然,它匹配,我得到了这个机构的515响应: Request URI is /img/signup/be0e1d34fabf2514d49db9baec09f858.png?w=198&h=198&s=9a7d22504c5ae176a936a0f18cccacba. Caught you Request URI is /img/signup/be0e1d34fabf2514d49db9baec09f858.png?w=198&h=198&s=9a7d22504c5ae176a936a0f18cccacba. Caught you

为什么? 正则expression式不匹配,至less不直观(或者它必须以一系列数字或者.png等结尾),也不能在Regex101.com上检查。

Nginx实际上并不匹配问号之后的部分。 这些是查询参数。 Nginx只能看到path的末尾( .png )。 既然如此,那就相当好了。