nginx限制用户下载文件速率
nginx限制用户下载文件速率
汉克斯 发表于2年前
nginx限制用户下载文件速率
  • 发表于 2年前
  • 阅读 572
  • 收藏 32
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

下载www.linuxom.com/download/movie.avi 文件,默认情况下,很快就可以下载完成

# time wget http://42.51.137.195/download/movie.avi  
--2013-04-05 02:42:39--  http://42.51.137.195/download/movie.avi  
正在连接 42.51.137.195:80... 已连接。  
已发出 HTTP 请求,正在等待回应... 200 OK  
长度:40817431 (39M) [video/x-msvideo]  
正在保存至: “movie.avi.1”  
100%[======================================>] 40,817,431   116M/s   in 0.3s  
2013-04-05 02:42:40 (116 MB/s) - 已保存 “movie.avi.1” [40817431/40817431])  
real    0m0.342s  
user    0m0.021s  
sys     0m0.180s

修改nginx.conf文件,限制下载速度为128kb/s

location /download {  
    limit_rate 128k;  
}

重新加载配置文件

/usr/local/nginx/sbin/nginx -s reload

再次下载www.linuxom.com/download/movie.avi 文件

# time wget http://42.51.137.195/download/movie.avi  
--2013-04-05 02:51:28--  http://42.51.137.195/download/movie.avi  
正在连接 42.51.137.195:80... 已连接。  
已发出 HTTP 请求,正在等待回应... 200 OK  
长度:40817431 (39M) [video/x-msvideo]  
正在保存至: “movie.avi.5”
3% [===>                                      ] 1,572,864    526K/s         
#########################省略部分内容########################
real    0m1.332s
user    0m0.009s
sys     0m0.011s

发现限速成功。

如果想设置用户下载文件的前10m大小时不限速,大于10m后再以128kb/s限速可以增加以下配内容,修改nginx.conf文件

location /download {  
    limit_rate_after 10m;  
    limit_rate 128k;  
}

重新加载配置文件

/usr/local/nginx/sbin/nginx -s reload

 再次下载www.linuxom.com/download/movie.avi 文件

# time wget http://42.51.137.195/download/movie.avi  
--2013-04-05 02:55:33--  http://42.51.137.195/download/movie.avi  
正在连接 42.51.137.195:80... 已连接。  
已发出 HTTP 请求,正在等待回应... 200 OK  
长度:40817431 (39M) [video/x-msvideo]  
正在保存至: “movie.avi.8”  
26% [=================================>] 11,026,432  9.62M/s     
######################省略部分内容###########################  
real    0m57.149s  
user    0m0.013s  
sys     0m0.212s

发现前10m左右,约为文件的26%时,文件下载不限速,随后开始限速。

共有 人打赏支持
粉丝 16
博文 13
码字总数 19282
×
汉克斯
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: