Sådan begrænses filoverførselsstørrelsen i Nginx


I vores sidste artikel har vi forklaret, hvordan du begrænser størrelsen på upload af brugerfiler i Apache. I denne artikel vil vi forklare, hvordan du begrænser størrelsen på upload af brugerfil i Nginx. Begrænsning af filoverførselsstørrelse er nyttigt for at forhindre nogle typer DOS-angreb (Denial-of-Service) og mange andre relaterede problemer.

Som standard har Nginx en grænse på 1 MB for filuploads. For at indstille filoverførselsstørrelse kan du bruge client_max_body_size -direktivet, som er en del af Nginxs ngx_http_core_module-modul. Dette direktiv kan indstilles i http, server eller placeringskontekst.

Det indstiller den maksimalt tilladte størrelse for klientanmodningselementet, der er specificeret i feltet "Content-Length" -anmodningsoverskrift. Her er et eksempel på at øge grænsen til 100 MB i filen /etc/nginx/nginx.conf .

Sæt i http-blok, som påvirker alle serverblokke (virtuelle værter).

http {
    ...
    client_max_body_size 100M;
}    

Sæt i serverblok, som påvirker et bestemt sted/app.

server {
    ...
    client_max_body_size 100M;
}

Sæt i placeringsblok, som påvirker et bestemt bibliotek (uploads) under et websted/en app.

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

Gem filen, og genstart Nginx-webserveren for at anvende de seneste ændringer ved hjælp af følgende kommando.

# systemctl restart nginx       #systemd
# service nginx restart         #sysvinit

Når du har gemt ændringerne og genstartet HTTP-serveren, hvis størrelsen i en anmodning overstiger den konfigurerede værdi på 100 MB, returneres fejlen 413 (Request Entity Too Large) til klienten.

Bemærk: Du skal huske på, at browsere nogle gange muligvis ikke viser denne fejl korrekt. Og indstilling af en valua (størrelse) til 0 deaktiverer kontrol af klientforespørgselens kropsstørrelse.

Du kan også godt lide at læse disse følgende artikler relateret til Nginx-webserveradministration.

  1. Sådan ændres Nginx-port i Linux
  2. Sådan skjules Nginx-serverversion i Linux
  3. ngxtop - Overvåg Nginx-logfiler i realtid i Linux
  4. Sådan overvåges Nginx-ydeevne ved hjælp af Netdata
  5. Sådan aktiveres NGINX-statusside

Reference: ngx_http_core_module dokumentation

Det er alt! I denne korte artikel har vi forklaret, hvordan man begrænser størrelsen på upload af brugerfil i Nginx. Du kan dele dine tanker med os via kommentarformularen nedenfor.