Nginx带宽限制 为小水管的带宽下载和图片开源节流

2019-11-21T01:26:29

最近在弄下载服务器,本身也是一台小水管的机器,本着不可能开放服务器全部带宽。主要是怕被人盯上拼命拖数据,导致大部分流量流失,毕竟还有还跑其他应用。

Nginx提供了limit_ratelimit_rate_after,来进行会话的并发连接数控制。也就说Nginx可以限制同一个IP的下载速度和访问并发数限制。

图片限制

对于一些小带宽的服务器,可以限制大图延迟加载,小图直接显示不受限制。把正常的图片的大小限定为100K以内,超过就进行限速,速度限定为100K/s

在Nginx的配置文件添加限定图片访问的配置

location ~ .*\.(gif|jpg|jpeg|png|bmp)$
 {     
   expires 30d;
   limit_rate_after 100k;
   limit_rate 100k;
}

这配置的意思是 expires 30d; 就是在浏览器上面缓存30天,访问时可以不经过Nginx来进行拉取图片,直接在浏览器缓存中拉取。limit_rate_after 100k;`limit_rate 100k;` 意思就是当图片加载到100K以后进行限速,最高100K/s

下载文件目录限制

文件目录/download下的文件进行限速,用户下载达到 500k 后,便控制其速度在 50k/s 以内。

location /download/ {
    limit_rate_after 500k;
    limit_rate 50k;
}
当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »