首页 > nginx 随机响应功能

nginx 随机响应功能

客户端跟服务器端交互时,出现了一个失误的定时设计,造成服务器端10分钟内接收到超过30万次请求,php后端瞬间的压力暴增而崩溃。

目前的解决方案时,由于短时间内的重复请求获取的内容都是相同的,在Nginx层直接将有特殊参数的请求给drop掉,直接返回无结果。

代码如下

shell    if ( $query_string ~ "api=(getpush|remove)")
    {
        return 200 '{"resultStatus":1,"allCount":0,"data":[]}';
        break;
    }

这个解决方案不完善的地方,比如只禁掉90%的请求,或者只在指定时间内生效,不知道有没有同学有没有类似的防攻击解决方案?


可以考虑用一个upstream,设定一个权重,把90%的请求转移到一个dummy的接口上


fine, 自己来把坑补上

nginx+lua=openresty

【热门文章】
【热门文章】