Ricerca nel sito web

Come limitare la dimensione del caricamento dei file in Nginx


Nel nostro ultimo articolo, abbiamo spiegato come limitare la dimensione del caricamento dei file utente in Apache. In questo articolo spiegheremo come limitare la dimensione del caricamento dei file utente in Nginx. Limitare la dimensione del caricamento dei file è utile per prevenire alcuni tipi di attacchi Denial of Service (DOS) e molti altri problemi correlati.

Per impostazione predefinita, Nginx ha un limite di 1 MB sui caricamenti di file. Per impostare la dimensione di caricamento del file, puoi utilizzare la direttiva client_max_body_size, che fa parte del modulo ngx_http_core_module di Nginx. Questa direttiva può essere impostata nel contesto http, server o località.

Imposta la dimensione massima consentita del corpo della richiesta del client, specificata nel campo dell'intestazione della richiesta "Content-Length". Ecco un esempio di come aumentare il limite a 100 MB nel file /etc/nginx/nginx.conf.

Impostato in blocco http che influisce su tutti i blocchi del server (host virtuali).

http {
    ...
    client_max_body_size 100M;
}    

Impostato nel blocco server, che influisce su un particolare sito/app.

server {
    ...
    client_max_body_size 100M;
}

Impostato nel blocco posizione, che influisce su una particolare directory (caricamenti) in un sito/app.

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

Salva il file e riavvia il server Web Nginx per applicare le modifiche recenti utilizzando il seguente comando.

systemctl restart nginx       #systemd
service nginx restart         #sysvinit

Dopo aver salvato le modifiche e riavviato il server HTTP, se la dimensione di una richiesta supera il valore configurato di 100 MB, viene restituito l'errore 413 (Request Entity Too Large) al cliente.

Nota: tieni presente che a volte i browser potrebbero non visualizzare correttamente questo errore. Inoltre, l'impostazione di un valore (dimensione) su 0 disabilita il controllo della dimensione del corpo della richiesta del client.

Potrebbe interessarti anche leggere i seguenti articoli relativi all'amministrazione del server web Nginx.

  1. Come cambiare la porta Nginx in Linux
  2. Come nascondere la versione del server Nginx in Linux
  3. ngxtop: monitora i file di registro Nginx in tempo reale in Linux
  4. Come monitorare le prestazioni di Nginx utilizzando Netdata
  5. Come abilitare la pagina di stato NGINX

È tutto! In questo breve articolo abbiamo spiegato come limitare la dimensione del caricamento dei file utente in Nginx. Puoi condividere i tuoi pensieri con noi tramite il modulo di commento qui sotto.