Nginx限制用戶下載文件速率

jopen 9年前發布 | 13K 次閱讀 Nginx Web服務器

下載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%時,文件下載不限速,隨后開始限速。

來自:http://my.oschina.net/gaga/blog/495444

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!