nginx 限制IP最大下载速度,该配置对多线程下载器也起作用

网上用nginx限制Ip的并发数,每个ip的带宽这样的教程贼多,而且都是抄来抄去,很烦。都没有我要的只对某个ip限制他的下载速度,也可能是我的需求比较奇葩不常见吧。下面我就教你一步步怎么弄吧

  1. 去git上把 Nginx-limit-traffic-rate-module这个模块下载来 地址:https://github.com/bigplum/Nginx-limit-traffic-rate-module 解压出来把Nginx-limit-traffic-rate-module-master文件夹拷贝到/usr/local/src/

  2. 查看自己nginx的配置信息,获得configure的信息

    # nginx -V
    nginx version: nginx/1.8.0
    built by gcc 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) 
    built with OpenSSL 1.0.1e-fips 11 Feb 2013
    TLS SNI support enabled
    configure arguments: --prefix=/usr/local/nginx --with-http_ssl_module --with-http_sub_module --with-http_gzip_static_module --with-http_stub_status_module --add-module=/data/software/ngx_http_substitutions_filter_module
  3. 到网上下载对应的nginx1.8.0的源码,如果是lnmp 一般你之前安装lnmpd的时候root/目录里面有打包的源码,如:/root/lnmp1.7/lnmp1.7/src/ 下面就有nginx-1.18.0.tar.gz的源码包,解压源码包进入到源码目录里面:
  4. 在configure命令里面增加Nginx-limit-traffic-rate-module这个模块
    # ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_sub_module --with-http_gzip_static_module --with-http_stub_status_module --add-module=/data/software/ngx_http_substitutions_filter_module --add-module=/usr/local/src/Nginx-limit-traffic-rate-module-master
    # make    //千万不要make install,不然就真的覆盖了
  5. 替换nginx二进制文件
    # cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
    # cp ./objs/nginx /usr/local/nginx/sbin/
  6. 配置nginx.conf
    http {
       
      limit_traffic_rate_zone rate $remote_addr 64m;
        server {
            listen       8888;
            server_name  localhost;
    
          location / {
                    limit_traffic_rate rate 2248k;
            }
        }
    }

     

posted @ 2021-05-14 16:15  likecs  阅读(658)  评论(0编辑  收藏  举报