nginx 访问频率限制配置

一、概述

 由于业务需求,需要显示某个api接口,限制1分钟访问1次。

二、nginx配置

先来安装一个nginx

yum install -y nginx

修改文件/etc/nginx/nginx.conf

增加红色部分

...
http {
    #同一个请求同一个imei 一分钟限制请求1次
    limit_req_zone $remote_addr*$arg_imei zone=zone_imei:10m rate=1r/m;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

...

    server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;
        root         /usr/share/nginx/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
            limit_req zone=zone_imei burst=1;
        }
...

启动nginx

nginx

访问默认页面,正常的

再刷新一次,提示错误

本文参考链接:

https://blog.csdn.net/weixin_34416754/article/details/92691038

原文地址:https://www.cnblogs.com/xiao987334176/p/14116419.html