Comment trouver l'emplacement du répertoire racine des documents par défaut de Nginx ?

Publié 27 août 2024

Problème : Localiser le répertoire racine par défaut de Nginx

Trouver le répertoire racine par défaut de Nginx peut être difficile, surtout pour les nouveaux utilisateurs ou administrateurs système. Ce répertoire est l'endroit d'où Nginx sert le contenu web, et connaître son emplacement est important pour la gestion et le dépannage des sites web. Le chemin exact peut varier selon le système d'exploitation, la version de Nginx et la méthode d'installation, ce qui rend sa localisation délicate sans guidance.

Localisation du répertoire racine par défaut de Nginx

Étape 1 : Vérifier le fichier de configuration de Nginx

Pour trouver le fichier de configuration principal de Nginx, cherchez dans le répertoire "/etc/nginx". Le fichier principal est généralement nommé "nginx.conf". Utilisez cette commande pour afficher son contenu :

cat /etc/nginx/nginx.conf

En examinant la configuration pour les paramètres du répertoire racine, recherchez les directives "root" ou "location". Elles définissent souvent le chemin du répertoire racine. Par exemple :

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

Étape 2 : Chemins par défaut courants pour le répertoire racine de Nginx

Sur les systèmes Ubuntu et Debian, le répertoire racine par défaut de Nginx se trouve souvent à :

/var/www/html

Pour les autres distributions Linux, les chemins par défaut courants incluent :

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

Ces chemins peuvent changer selon votre configuration et les personnalisations effectuées lors de l'installation.

Vérification de l'emplacement du répertoire racine de Nginx

Utilisation des outils en ligne de commande

Pour vérifier le répertoire racine à l'aide des outils en ligne de commande, utilisez cette commande :

nginx -T | grep root

Cette commande affiche la configuration de Nginx et filtre les lignes contenant "root". La sortie montrera les chemins du répertoire racine dans votre configuration Nginx. Par exemple :

root /var/www/html;

Une autre commande utile est :

ps aux | grep nginx

Cette commande affiche les processus Nginx en cours d'exécution et peut inclure le chemin vers le fichier de configuration, ce qui peut aider à localiser le répertoire racine.

Test du répertoire racine

Pour tester si vous avez trouvé le bon répertoire racine, créez un fichier HTML simple dans ce répertoire :

echo "<html><body><h1>Page de test</h1></body></html>" | sudo tee /var/www/html/test.html

Remplacez "/var/www/html" par le chemin du répertoire racine que vous suspectez.

Accédez à ce fichier de test via un navigateur web en visitant :

http://adresse_ip_de_votre_serveur/test.html

Si vous voyez le titre "Page de test", vous avez identifié le répertoire racine de Nginx. Sinon, vérifiez votre configuration Nginx ou cherchez le répertoire racine à un autre endroit.

Modification du répertoire racine de Nginx

Modification de la configuration de Nginx

Pour changer le répertoire racine de Nginx :

  1. Ouvrez le fichier de configuration de Nginx :

    sudo nano /etc/nginx/nginx.conf
  2. Trouvez le bloc server et mettez à jour la directive root :

    server {
    ...
    root /chemin/vers/nouveau/repertoire/racine;
    ...
    }
  3. Sauvegardez le fichier et quittez l'éditeur.

  4. Vérifiez la configuration pour détecter d'éventuelles erreurs :

    sudo nginx -t
  5. S'il n'y a pas d'erreurs, redémarrez Nginx pour appliquer les changements :

    sudo systemctl restart nginx

Considérations lors du changement de répertoire racine

Lors de la modification du répertoire racine de Nginx :

  1. Définissez les permissions et la propriété du nouveau répertoire :

    sudo chown -R www-data:www-data /chemin/vers/nouveau/repertoire/racine
    sudo chmod -R 755 /chemin/vers/nouveau/repertoire/racine
  2. Mettez à jour les configurations associées :

    • Vérifiez les blocs server dans les fichiers de configuration séparés.
    • Modifiez les configurations PHP-FPM si vous utilisez PHP.
    • Mettez à jour les blocs location qui font référence à l'ancien répertoire racine.
  3. Testez votre site web après avoir effectué les changements.

  4. Mettez à jour vos scripts de déploiement pour utiliser le nouvel emplacement du répertoire racine.

  5. Créez une sauvegarde de votre ancien répertoire racine avant d'effectuer des modifications.

Résolution des problèmes liés au répertoire racine de Nginx

Problèmes courants et solutions

Permissions incorrectes :

  • Problème : Nginx ne peut pas accéder aux fichiers dans le répertoire racine.
  • Solution : Définissez les permissions en utilisant :
    sudo chown -R www-data:www-data /var/www/html
    sudo chmod -R 755 /var/www/html

Erreurs de configuration dans les blocs server :

  • Problème : Chemin incorrect du répertoire racine dans la configuration du bloc server.
  • Solution : Vérifiez les blocs server dans /etc/nginx/sites-available/ et mettez à jour la directive root :
    server {
      ...
      root /chemin/correct/vers/repertoire/racine;
      ...
    }

Journalisation et débogage

Utilisation des journaux d'erreurs Nginx pour trouver les problèmes de répertoire racine :

  • Vérifiez les journaux d'erreurs à /var/log/nginx/error.log :
    sudo tail -f /var/log/nginx/error.log
  • Recherchez les messages concernant les permissions de fichiers ou les erreurs "No such file or directory".

Techniques de débogage pour les problèmes de répertoire racine :

  1. Utilisez nginx -T pour voir la configuration :
    sudo nginx -T
  2. Testez la configuration de Nginx :
    sudo nginx -t
  3. Vérifiez l'existence des fichiers et leurs permissions :
    ls -l /chemin/vers/repertoire/racine
  4. Essayez d'accéder aux fichiers directement en utilisant curl :
    curl -I http://localhost/index.html