Kako ograničiti veličinu otpremanja datoteka u Nginxu


U našem posljednjem članku objasnili smo ograničavanje veličine korisničkog fajla za otpremanje u Apacheu. U ovom članku ćemo objasniti kako ograničiti veličinu korisničkog fajla za otpremanje u Nginx. Ograničavanje veličine datoteke za otpremanje je korisno za sprečavanje nekih vrsta napada uskraćivanjem usluge (DOS) i mnogih drugih povezanih problema.

Prema zadanim postavkama, Nginx ima ograničenje od 1MB za otpremanje datoteka. Da postavite veličinu datoteke za otpremanje, možete koristiti client_max_body_size direktivu, koja je dio Nginxovog ngx_http_core_module modula. Ova direktiva se može postaviti u kontekstu http, server ili lokacije.

Postavlja maksimalnu dozvoljenu veličinu tijela zahtjeva klijenta, specificiranu u polju zaglavlja zahtjeva “Content-Length”. Evo primjera povećanja ograničenja na 100 MB u datoteci /etc/nginx/nginx.conf.

Postavite u http blok koji utiče na sve blokove servera (virtuelni hostovi).

http {
    ...
    client_max_body_size 100M;
}    

Postavite u blok servera, što utiče na određenu web lokaciju/aplikaciju.

server {
    ...
    client_max_body_size 100M;
}

Postavite u blok lokacije, što utječe na određeni direktorij (uploads) na web lokaciji/aplikaciji.

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

Sačuvajte datoteku i ponovo pokrenite Nginx web server da biste primijenili nedavne promjene koristeći sljedeću naredbu.

systemctl restart nginx       #systemd
service nginx restart         #sysvinit

Nakon što ste spremili promjene i ponovo pokrenuli HTTP server, ako veličina u zahtjevu premašuje konfiguriranu vrijednost od 100MB, vraća se greška 413 (Zahtjev entitet je prevelik) klijentu.

Napomena: Imajte na umu da ponekad pretraživači možda neće ispravno prikazati ovu grešku. I postavljanje vrijednosti (veličine) na 0 onemogućava provjeru veličine tijela zahtjeva klijenta.

Možda biste željeli pročitati i ove sljedeće članke koji se odnose na administraciju Nginx web servera.

  1. Kako promijeniti Nginx port u Linuxu
  2. Kako sakriti verziju Nginx servera u Linuxu
  3. ngxtop – Nadgledanje Nginx log fajlova u realnom vremenu u Linuxu
  4. Kako pratiti performanse Nginxa koristeći Netdata
  5. Kako omogućiti NGINX statusnu stranicu

To je sve! U ovom kratkom članku objasnili smo kako ograničiti veličinu datoteke za otpremanje korisnika u Nginxu. Svoje mišljenje možete podijeliti s nama putem obrasca za komentare ispod.