Kaip apriboti failo įkėlimo dydį „Nginx“.


Paskutiniame straipsnyje paaiškinome, kaip apriboti naudotojo failo įkėlimo dydį „Apache“. Šiame straipsnyje paaiškinsime, kaip apriboti naudotojo failo įkėlimo dydį Nginx. Failų įkėlimo dydžio ribojimas yra naudingas siekiant užkirsti kelią tam tikrų tipų paslaugų atsisakymo (DOS) atakoms ir daugeliui kitų susijusių problemų.

Pagal numatytuosius nustatymus Nginx failų įkėlimo apribojimas yra 1 MB. Norėdami nustatyti failo įkėlimo dydį, galite naudoti direktyvą client_max_body_size, kuri yra Nginx modulio ngx_http_core_module dalis. Šią direktyvą galima nustatyti http, serverio arba vietos kontekste.

Jis nustato didžiausią leistiną kliento užklausos turinio dydį, nurodytą užklausos antraštės lauke „Turinio ilgis“. Štai pavyzdys, kaip faile /etc/nginx/nginx.conf limitas padidinamas iki 100 MB.

Nustatykite http bloką, kuris turi įtakos visiems serverio blokams (virtualioms priegloboms).

http {
    ...
    client_max_body_size 100M;
}    

Nustatykite serverio bloką, kuris turi įtakos konkrečiai svetainei/programai.

server {
    ...
    client_max_body_size 100M;
}

Nustatykite vietos bloke, kuris turi įtakos tam tikram svetainės/programos katalogui (įkėlimams).

location /uploads {
    ...
    client_max_body_size 100M;
} 

Išsaugokite failą ir iš naujo paleiskite „Nginx“ žiniatinklio serverį, kad pritaikytumėte naujausius pakeitimus naudodami šią komandą.

systemctl restart nginx       #systemd
service nginx restart         #sysvinit

Išsaugojus pakeitimus ir iš naujo paleidus HTTP serverį, jei užklausos dydis viršija sukonfigūruotą 100 MB reikšmę, pateikiama klaida 413 (užklausos objektas per didelis). klientui.

Pastaba: atminkite, kad kartais naršyklės gali netinkamai parodyti šią klaidą. O nustačius vertę (dydį) į 0, neleidžiama tikrinti kliento užklausos turinio dydžio.

Taip pat galbūt norėsite perskaityti šiuos straipsnius, susijusius su Nginx žiniatinklio serverio administravimu.

  1. Kaip pakeisti „Nginx“ prievadą „Linux“.
  2. Kaip paslėpti „Nginx“ serverio versiją „Linux“.
  3. ngxtop – Stebėkite „Nginx“ žurnalo failus realiuoju laiku sistemoje „Linux“.
  4. Kaip stebėti „Nginx“ našumą naudojant „Netdata“.
  5. Kaip įjungti NGINX būsenos puslapį

Tai viskas! Šiame trumpame straipsnyje paaiškinome, kaip apriboti vartotojo failo įkėlimo dydį Nginx. Galite pasidalinti savo mintimis su mumis naudodami toliau pateiktą komentarų formą.