Hoe de bestandsuploadgrootte in Nginx te verhogen?

Gepubliceerd 21 juli 2024

Probleem: Nginx Bestandsuploadgrootte Beperkingen

Nginx, een webserver, heeft standaard bestandsuploadgrootte limieten die grote bestandsoverdrachten kunnen stoppen. Deze limiet kan problemen veroorzaken bij het uploaden van grote documenten, mediabestanden of datasets via webapplicaties op Nginx servers.

De Nginx Configuratiebestand Lokaliseren

Veelvoorkomende Nginx Configuratiebestand Locaties

Het Nginx configuratiebestand bevindt zich meestal op een van deze locaties:

  • /etc/nginx/nginx.conf
  • /usr/local/nginx/conf/nginx.conf

Dit zijn de standaard paden voor het hoofd Nginx configuratiebestand. De exacte locatie kan verschillen op basis van hoe Nginx werd geïnstalleerd en je besturingssysteem.

Tip: Controleer Package Manager

Als je Nginx hebt geïnstalleerd met een package manager zoals apt of yum, kun je vaak de configuratiebestand locatie vinden door de pakketinformatie te controleren. Bijvoorbeeld, op Ubuntu of Debian systemen, kun je gebruiken:

dpkg -L nginx | grep nginx.conf

Dit commando toont alle bestanden geïnstalleerd door het Nginx pakket en filtert op het nginx.conf bestand.

Probleemoplossing Voor Ontbrekende Configuratiebestanden

Als je het Nginx configuratiebestand niet kunt vinden op de verwachte plaatsen, probeer deze stappen:

  1. Controleer Nginx installatie: Voer nginx -v uit om te verifiëren of Nginx is geïnstalleerd en zie de versie.

  2. Gebruik commandoregel tools om te zoeken naar config bestanden:

    • Zoek naar nginx.conf:
      sudo find / -name nginx.conf
    • Zoek naar elk bestand met "nginx" in de naam:
      sudo find / -name "*nginx*"

Als deze stappen je niet helpen het configuratiebestand te vinden, is Nginx mogelijk niet geïnstalleerd op je systeem of het zou zich op een niet-standaard locatie kunnen bevinden.

Nginx Instellingen Aanpassen Om Uploadgrootte Te Verhogen

Het Nginx Configuratiebestand Bewerken

Om de bestandsuploadgrootte limiet in Nginx te verhogen, moet je het Nginx configuratiebestand bewerken:

  1. Open het configuratiebestand met een teksteditor:

    sudo nano /etc/nginx/nginx.conf

    Gebruik het juiste pad als je configuratiebestand zich op een andere locatie bevindt.

  2. Vind de sectie om wijzigingen aan te brengen. Je kunt de client_max_body_size richtlijn plaatsen in de http, server, of location context. Het staat vaak in het server blok.

De client_max_body_size Parameter Aanpassen

Om de maximaal toegestane grootte van het client request body te wijzigen:

  1. Voeg toe of wijzig de client_max_body_size richtlijn:

    client_max_body_size 100M;

    Dit stelt de maximale uploadgrootte in op 100 megabytes. Wijzig deze waarde indien nodig.

  2. Als de richtlijn bestaat, wijzig de waarde. Zo niet, voeg de regel toe aan het juiste gedeelte van je configuratiebestand.

  3. Gebruik M voor megabytes of G voor gigabytes. Gebruik niet MB of GB aangezien deze niet zullen werken.

  4. Je kunt verschillende limieten instellen voor verschillende locaties:

    location /upload {
       client_max_body_size 500M;
    }

    Dit stelt een 500MB limiet in voor de /upload locatie.

  5. Sla de wijzigingen op en sluit de teksteditor af.

Test je configuratie en herlaad Nginx na het maken van deze wijzigingen. Zorg ervoor dat je PHP instellingen (indien van toepassing) overeenkomen met je nieuwe Nginx uploadgrootte limiet.

Tip: Controleer PHP upload instellingen

Als je PHP gebruikt met Nginx, vergeet dan niet om ook de PHP upload instellingen aan te passen. Bewerk je php.ini bestand en wijzig deze waarden:

upload_max_filesize = 100M
post_max_size = 100M

Vervang 100M door je gewenste limiet. Herstart PHP-FPM na het maken van deze wijzigingen.

De Nieuwe Configuratie Testen En Toepassen

Nginx Configuratie Syntax Verifiëren

Na het wijzigen van het Nginx configuratiebestand, controleer op syntaxfouten voordat je de wijzigingen toepast. Gebruik dit commando om de configuratie te verifiëren:

sudo nginx -t

Dit commando test de Nginx configuratiebestanden en rapporteert fouten. Als de test slaagt, zie je een bericht dat de configuratietest succesvol is en de syntax ok is.

Als er fouten zijn, zal het commando details tonen over het probleem en de locatie ervan in het configuratiebestand. Los deze fouten op voordat je verdergaat.

Tip: Maak Een Backup Van Je Configuratie

Voordat je wijzigingen aanbrengt aan je Nginx configuratie, maak een backup van je huidige configuratiebestand. Dit stelt je in staat om snel wijzigingen terug te draaien indien nodig:

sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.backup

Nginx Herladen Of Herstarten

Zodra je hebt bevestigd dat de configuratie syntax correct is, pas je de nieuwe instellingen toe. Er zijn twee hoofdmethoden:

  1. Herlaad Nginx: Deze methode onderbreekt actieve verbindingen niet. Gebruik dit commando:

    sudo nginx -s reload

    Of, als je systemd gebruikt:

    sudo systemctl reload nginx
  2. Herstart Nginx: Als een herlaad niet alle wijzigingen toepast, moet je mogelijk Nginx herstarten. Dit zal alle actieve verbindingen onderbreken:

    sudo systemctl restart nginx

Na het herladen of herstarten van Nginx, zou de nieuwe bestandsuploadgrootte limiet actief moeten zijn. Test je bestandsupload functie om te bevestigen dat grotere bestanden nu kunnen worden geüpload.

Monitor de prestaties van je server na het verhogen van de uploadgrootte limiet, aangezien het verwerken van grotere bestandsuploads meer serverbronnen kan vereisen.