Hoe de standaard Nginx documentroot directory locatie te vinden?

Gepubliceerd 29 juni 2024

Probleem: De standaard Document Root van Nginx lokaliseren

Het vinden van de standaard document root directory voor Nginx kan moeilijk zijn, vooral voor nieuwe gebruikers of systeembeheerders. Deze directory is waar Nginx webinhoud vandaan serveert, en het kennen van de locatie is belangrijk voor websitebeheer en probleemoplossing. Het exacte pad kan variëren afhankelijk van het besturingssysteem, Nginx-versie en installatiemethode, waardoor het moeilijk te vinden is zonder begeleiding.

De standaard Nginx Document Root lokaliseren

Stap 1: Controleer het Nginx Configuratiebestand

Om het hoofd Nginx configuratiebestand te vinden, kijk in de "/etc/nginx" directory. Het hoofdbestand heet meestal "nginx.conf". Gebruik dit commando om de inhoud te bekijken:

cat /etc/nginx/nginx.conf

Wanneer u de configuratie controleert op document root instellingen, zoek naar "root" of "location" directives. Deze stellen vaak het document root pad in. Bijvoorbeeld:

server {
    ...
    root /var/www/html;
    ...
}

Stap 2: Veelvoorkomende standaardpaden voor Nginx Document Root

Op Ubuntu en Debian systemen bevindt de standaard Nginx document root zich vaak op:

/var/www/html

Voor andere Linux distributies zijn veelvoorkomende standaardpaden:

  • CentOS/RHEL: "/usr/share/nginx/html"
  • Fedora: "/usr/share/nginx/html"
  • Arch Linux: "/usr/share/nginx/html"

Deze paden kunnen veranderen op basis van uw installatie en eventuele aangepaste configuraties die tijdens de installatie zijn gemaakt.

De Nginx Document Root locatie verifiëren

Commandoregel Tools gebruiken

Om de document root te controleren met commandoregel tools, gebruik dit commando:

nginx -T | grep root

Dit commando toont de Nginx configuratie en filtert op regels met "root". De uitvoer toont de document root paden in uw Nginx configuratie. Bijvoorbeeld:

root /var/www/html;

Een ander nuttig commando is:

ps aux | grep nginx

Dit commando toont draaiende Nginx processen en kan het pad naar het configuratiebestand bevatten, wat kan helpen de document root te lokaliseren.

De Document Root testen

Om te testen of u de juiste document root hebt gevonden, maak een eenvoudig HTML-bestand in de directory:

echo "<html><body><h1>Test Pagina</h1></body></html>" | sudo tee /var/www/html/test.html

Vervang "/var/www/html" met uw vermoedelijke document root pad.

Ga naar dit testbestand via een webbrowser door te bezoeken:

http://your_server_ip/test.html

Als u de "Test Pagina" kop ziet, hebt u de Nginx document root geïdentificeerd. Zo niet, controleer uw Nginx configuratie of zoek naar de document root op een andere locatie.

De Nginx Document Root wijzigen

Het Nginx Configuratiebestand aanpassen

Om de Nginx document root te wijzigen:

  1. Open het Nginx configuratiebestand:

    sudo nano /etc/nginx/nginx.conf
  2. Vind het server blok en werk de root directive bij:

    server {
    ...
    root /pad/naar/nieuwe/document/root;
    ...
    }
  3. Sla het bestand op en sluit de editor af.

  4. Controleer de configuratie op fouten:

    sudo nginx -t
  5. Als er geen fouten zijn, herstart Nginx om de wijzigingen toe te passen:

    sudo systemctl restart nginx

Overwegingen bij het wijzigen van Document Root

Bij het wijzigen van de Nginx document root:

  1. Stel permissies en eigendom in voor de nieuwe directory:

    sudo chown -R www-data:www-data /pad/naar/nieuwe/document/root
    sudo chmod -R 755 /pad/naar/nieuwe/document/root
  2. Werk gerelateerde configuraties bij:

    • Controleer server blokken in aparte configuratiebestanden.
    • Pas PHP-FPM configuraties aan indien u PHP gebruikt.
    • Werk location blokken bij die verwijzen naar de oude document root.
  3. Test uw website na het maken van wijzigingen.

  4. Werk uw deployment scripts bij om de nieuwe document root locatie te gebruiken.

  5. Maak een backup van uw oude document root voordat u wijzigingen aanbrengt.

Nginx Document Root problemen oplossen

Veelvoorkomende problemen en oplossingen

Onjuiste permissies:

  • Probleem: Nginx heeft geen toegang tot bestanden in de document root.
  • Oplossing: Stel permissies in met:
    sudo chown -R www-data:www-data /var/www/html
    sudo chmod -R 755 /var/www/html

Verkeerde configuraties in server blokken:

  • Probleem: Verkeerd document root pad in server blok configuratie.
  • Oplossing: Controleer server blokken in /etc/nginx/sites-available/ en werk de root directive bij:
    server {
      ...
      root /correct/pad/naar/document/root;
      ...
    }

Logging en Debugging

Nginx error logs gebruiken om document root problemen te vinden:

  • Controleer error logs op /var/log/nginx/error.log:
    sudo tail -f /var/log/nginx/error.log
  • Zoek naar berichten over bestandspermissies of "No such file or directory" fouten.

Debugging technieken voor document root problemen:

  1. Gebruik nginx -T om de configuratie te bekijken:
    sudo nginx -T
  2. Test Nginx configuratie:
    sudo nginx -t
  3. Controleer bestandsbestaan en permissies:
    ls -l /pad/naar/document/root
  4. Probeer bestanden rechtstreeks te openen met curl:
    curl -I http://localhost/index.html