La valeur par défaut est liée à l' prefix
option du configure
script lorsque nginx est compilé; voici un exemple étrange de Debian:
% nginx -V | & tr ' ' "\n" | fgrep -e path -e prefix
--prefix=/etc/nginx
--conf-path=/etc/nginx/nginx.conf
--error-log-path=/var/log/nginx/error.log
--http-client-body-temp-path=/var/lib/nginx/body
--http-fastcgi-temp-path=/var/lib/nginx/fastcgi
--http-log-path=/var/log/nginx/access.log
--http-proxy-temp-path=/var/lib/nginx/proxy
--http-scgi-temp-path=/var/lib/nginx/scgi
--http-uwsgi-temp-path=/var/lib/nginx/uwsgi
--lock-path=/var/lock/nginx.lock
--pid-path=/var/run/nginx.pid
Par la suite, la valeur par défaut de root
est définie dans le html
répertoire (selon la documentation de la root
directive ), qui se trouve à l'intérieur prefix
, comme cela peut être vérifié en regardant la $document_root
variable à partir d'un simple fichier de configuration:
# printf 'server{listen 4867;return 200 $document_root\\n;}\n' \
>/etc/nginx/conf.d/so.10674867.conf
# nginx -s reload && curl localhost:4867
/etc/nginx/html
Cependant, les distributions maléfiques comme Debian semblent le modifier un peu, pour vous divertir davantage:
% fgrep -e root -e include /etc/nginx/nginx.conf
include /etc/nginx/mime.types;
#include /etc/nginx/naxsi_core.rules;
#passenger_root /usr;
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
% fgrep -e root -e include \
/etc/nginx/conf.d/*.conf /etc/nginx/sites-enabled/*
/etc/nginx/conf.d/so.10674867.conf:server{listen 4867;return 200 $document_root\n;}
/etc/nginx/sites-enabled/default: root /usr/share/nginx/www;
/etc/nginx/sites-enabled/default: # include /etc/nginx/naxsi.rules
/etc/nginx/sites-enabled/default: # root /usr/share/nginx/www;
/etc/nginx/sites-enabled/default: # include fastcgi_params;
/etc/nginx/sites-enabled/default: # deny access to .htaccess files, if Apache's document root
/etc/nginx/sites-enabled/default:# root html;
/etc/nginx/sites-enabled/default:# root html;
Donc, sur cette instance de Debian, vous pouvez voir que la racine est finalement définie sur /usr/share/nginx/www
.
Mais comme vous l'avez vu avec l'exemple de configuration de serveur qui servirait sa $document_root
valeur sur http, la configuration de nginx est assez simple pour que vous puissiez écrire votre propre configuration en une ou deux lignes, en spécifiant la configuration requise root
pour répondre à vos besoins exacts.