Kuinka rajoittaa tiedoston latauskokoa Nginxissä


Edellisessä artikkelissamme olemme selittäneet käyttäjän tiedostojen latauskoon rajoittamisesta Apachessa. Tässä artikkelissa selitämme, kuinka käyttäjän tiedostojen latauskokoa voidaan rajoittaa Nginxissä. Tiedostojen lähetyskoon rajoittaminen on hyödyllistä, jotta voidaan estää tietyntyyppiset palvelunestohyökkäykset (DOS) ja monet muut asiaan liittyvät ongelmat.

Oletuksena Nginxin tiedostojen lähetysraja on 1 Mt. Voit määrittää tiedoston lähetyskoon client_max_body_size-direktiivin avulla, joka on osa Nginxin ngx_http_core_module-moduulia. Tämä ohje voidaan asettaa http-, palvelin- tai sijainti-kontekstissa.

Se määrittää asiakaspyynnön rungon suurimman sallitun koon, joka on määritetty Content-Length -pyynnön otsikkokentässä. Tässä on esimerkki rajoituksen nostamisesta 100 megatavuun tiedostossa /etc/nginx/nginx.conf.

Aseta http-lohkossa, joka vaikuttaa kaikkiin palvelinlohkoihin (virtuaaliset isännät).

http {
    ...
    client_max_body_size 100M;
}    

Aseta palvelinlohkossa, joka vaikuttaa tiettyyn sivustoon/sovellukseen.

server {
    ...
    client_max_body_size 100M;
}

Aseta sijaintilohkossa, joka vaikuttaa tiettyyn hakemistoon (lataukset) sivuston/sovelluksen alla.

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

Tallenna tiedosto ja käynnistä Nginx-verkkopalvelin uudelleen ottaaksesi viimeisimmät muutokset käyttöön seuraavalla komennolla.

systemctl restart nginx       #systemd
service nginx restart         #sysvinit

Kun olet tallentanut muutokset ja käynnistänyt HTTP-palvelimen uudelleen ja jos pyynnön koko ylittää määritetyn arvon 100 Mt, palautetaan 413 (Request Entity Too Large) -virhe. asiakkaalle.

Huomaa: Muista, että joskus selaimet eivät välttämättä näytä tätä virhettä oikein. Arvon (koon) asettaminen arvoon 0 poistaa käytöstä asiakaspyynnön rungon koon tarkistuksen.

Saatat myös haluta lukea nämä seuraavat Nginx-verkkopalvelimen hallintaan liittyvät artikkelit.

  1. Kuinka muuttaa Nginx-portti Linuxissa
  2. Kuinka piilottaa Nginx-palvelinversio Linuxissa
  3. ngxtop - Tarkkaile Nginx-lokitiedostoja reaaliajassa Linuxissa
  4. Kuinka seurata Nginxin suorituskykyä Netdatan avulla
  5. Kuinka ottaa NGINX-tilasivu käyttöön

Siinä kaikki! Tässä lyhyessä artikkelissa olemme selittäneet kuinka rajoittaa käyttäjän tiedostojen latauskokoa Nginxissä. Voit jakaa ajatuksesi kanssamme alla olevan kommenttilomakkeen kautta.