我在nginx
配置中使用以下 if 语句正则表达式来匹配和阻止请求 uri 中的一些错误请求。这些错误的查询总是只请求一个参数,但每次都使用随机名称(和字母计数)。他们也总是点击主页。
错误查询示例:
/?some1bad0query2=nminkvywbjfdysnvhp
if ($request_uri ~ "[\w]{5,25}\=[\w]{5,25}$") {
return 403;
}
如何修改此正则表达式以排除匹配某些参数名称,例如key
or query
(ie. /?query=somestring) ?
我尝试使用圆括号,?(!query)
但没有运气。
请帮我纠正这个正则表达式语句。提前致谢。