隐藏

Nginx访问频率限制配置

发布:2022/12/27 15:50:34作者:管理员 来源:本站 浏览次数:746

一、概述


 由于业务需求,需要显示某个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


访问默认页面,正常的