Kako ograničiti veličinu datoteke za učitavanje u Nginx
U našem prošlom članku objasnili smo ograničavanje veličine korisničke datoteke za učitavanje u Apacheu. U ovom ćemo članku objasniti kako ograničiti veličinu korisničke datoteke za učitavanje u Nginx. Ograničavanje veličine učitane datoteke korisno je za sprječavanje nekih vrsta napada uskraćivanjem usluge (DOS) i mnogih drugih povezanih problema.
Prema zadanim postavkama, Nginx ima ograničenje od 1 MB za prijenos datoteka. Da biste postavili veličinu datoteke za prijenos, možete upotrijebiti direktivu client_max_body_size
, koja je dio Nginxovog modula ngx_http_core_module. Ova se direktiva može postaviti u kontekstu http, poslužitelj ili lokacija.
Postavlja najveću dopuštenu veličinu tijela zahtjeva klijenta, navedenu u polju zaglavlja zahtjeva “Content-Length”. Evo primjera povećanja ograničenja na 100 MB u /etc/nginx/nginx.conf
datoteci.
Postavite u http blok koji utječe na sve blokove poslužitelja (virtualni hostovi).
http {
...
client_max_body_size 100M;
}
Postavite u blokadu poslužitelja, koja utječe na određenu web-lokaciju/aplikaciju.
server {
...
client_max_body_size 100M;
}
Postavite u lokacijskom bloku, koji utječe na određeni direktorij (učitavanja) pod web-lokacijom/aplikacijom.
location /uploads {
...
client_max_body_size 100M;
}
Spremite datoteku i ponovno pokrenite Nginx web poslužitelj kako biste primijenili nedavne promjene pomoću sljedeće naredbe.
systemctl restart nginx #systemd
service nginx restart #sysvinit
Nakon što ste spremili promjene i ponovno pokrenuli HTTP poslužitelj, ako veličina zahtjeva premaši konfiguriranu vrijednost od 100MB, vraća se pogreška 413 (entitet zahtjeva prevelik) klijentu.
Napomena: Trebate imati na umu da preglednici ponekad možda neće pravilno prikazati ovu pogrešku. A postavljanje vrijednosti (veličine) na 0 onemogućuje provjeru veličine tijela zahtjeva klijenta.
Također biste mogli pročitati sljedeće članke koji se odnose na administraciju Nginx web poslužitelja.
- Kako promijeniti Nginx port u Linuxu
- Kako sakriti verziju Nginx poslužitelja u Linuxu
- ngxtop – Pratite Nginx log datoteke u stvarnom vremenu u Linuxu
- Kako pratiti izvedbu Nginxa pomoću Netdata
- Kako omogućiti NGINX statusnu stranicu
To je sve! U ovom kratkom članku objasnili smo kako ograničiti veličinu korisničke datoteke za prijenos u Nginx. Svoje mišljenje možete podijeliti s nama putem obrasca za komentare u nastavku.