nginx文件上傳下載控制的實(shí)現(xiàn)示例
上傳大小控制
client_max_body_size
設(shè)置最大客戶端請(qǐng)求體大小
默認(rèn)大小1M,可以使用在http, server, location塊。
根據(jù)不同的請(qǐng)求路徑設(shè)置不同的大小控制
server { listen 9001; client_max_body_size 2M; location / { root D:\\server\\nginx-1.22.0\\html\\9001; } location /upload/large { # 針對(duì)大文件上傳路徑,設(shè)置 50MB 限制 client_max_body_size 50M; } location /upload/small { # 針對(duì)小文件上傳路徑,設(shè)置 10MB 限制 client_max_body_size 10M; } }
下載控制
下載速度控制
limit_rate $rate
限制文件下載速度,默認(rèn)值是limit_rate 0;不進(jìn)行下載速度控制。$rate 用來(lái)指定每秒鐘下載允許下載的數(shù)據(jù)量大小。
limit_rate 指令的作用域可以是http, server, location, if in location。
限制文件下載
server { listen 9001; limit_rate 100k; location / { root html; } }
這樣下載該server下的文件將會(huì)限制下載速度為每秒100kb。
limit_rate_after
limit_rate_after 指令可以設(shè)置在傳輸一定量的數(shù)據(jù)后開始限制下載速度。它通常用于當(dāng)文件已經(jīng)開始下載時(shí),限制后續(xù)的下載速度。
location /download { root html; limit_rate_after 2M; limit_rate 100k; }
上面配置是當(dāng)下載完成2M后開始進(jìn)行限速,每秒為100kb。
不同條件控制下載速度
如果你希望根據(jù)不同的條件(如請(qǐng)求的文件類型、客戶端 IP、或者請(qǐng)求的文件大小等)來(lái)控制下載速度,可以結(jié)合 map 指令和 limit_rate 實(shí)現(xiàn)更復(fù)雜的邏輯。
http { map $http_user_agent $download_speed { default 100k; # 默認(rèn)速度限制 100KB/s ~*Chrome 300k; # 對(duì)于 Chrome 瀏覽器,下載速度限制為 300KB/s ~*Firefox 200k; # 對(duì)于 Firefox 瀏覽器,下載速度限制為 200KB/s } server { listen 9001; location /donload/ { # 使用 map 動(dòng)態(tài)設(shè)置下載速度 limit_rate $download_speed; root html; } } }
到此這篇關(guān)于nginx文件上傳下載控制的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)nginx文件上傳下載內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
nginx重寫rewrite基礎(chǔ)及實(shí)例分享
這篇文章主要介紹了nginx重寫rewrite基礎(chǔ)及實(shí)例分享,需要的朋友可以參考下2016-04-04基于Nginx實(shí)現(xiàn)限制某IP短時(shí)間訪問次數(shù)
這篇文章主要介紹了基于Nginx實(shí)現(xiàn)限制某IP短時(shí)間訪問次數(shù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-12-12Nginx層面配置基礎(chǔ)用戶驗(yàn)證的完整步驟
這篇文章主要給大家介紹了關(guān)于Nginx層面配置基礎(chǔ)用戶驗(yàn)證的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Nginx具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07fastdfs+nginx集群搭建的實(shí)現(xiàn)
這篇文章主要介紹了fastdfs+nginx集群搭建的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10Nginx由于反向代理導(dǎo)致502錯(cuò)誤的原因與解決
這篇文章主要為大家詳細(xì)介紹了Nginx由于反向代理導(dǎo)致502錯(cuò)誤的原因和相關(guān)的解決方法,文中的示例代碼講解詳細(xì),有需要的小伙伴可以參考一下2025-04-04nginx?http?499錯(cuò)誤碼詳解以及解決辦法
HTTP狀態(tài)碼出現(xiàn)499錯(cuò)誤有多種情況,499錯(cuò)誤是什么?這篇文章主要給大家介紹了關(guān)于nginx?http?499錯(cuò)誤碼以及解決辦法的相關(guān)資料,文中介紹的非常詳細(xì),需要的朋友可以參考下2024-01-01