407 Stimmen

NGinx Standardmäßige öffentliche www-Adresse?

Ich habe bereits mit Apache gearbeitet und weiß daher, dass die öffentliche Standard-Webroot normalerweise /var/www/ .

Ich habe vor kurzem angefangen, mit nginx zu arbeiten, aber ich kann die standardmäßige öffentliche Web Root nicht finden.

Wo kann ich die öffentliche Standard-Webroot für nginx finden?

2voto

lfender6445 Punkte 29514

Für nginx/1.4.6 (Ubuntu)

/etc/nginx$ cat /etc/nginx/sites-available/default | grep -i root
- root /usr/share/nginx/html;

2voto

John C Punkte 21

Ich hatte dieses Problem auch auf Digital Ocean mit einer WordPress-Website mit nginx.

Meine Lösung bestand in folgendem Vorgehen:

  1. Ändern Sie die /etc/nginx/nginx.conf Datei mit dem folgenden Inhalt:

    server { root /var/www/html; }

Ich musste dann sudo service nginx restart

nginx -V Befehl zeigt Ihnen auch, wo sich Ihre nginx-Konfigurationsdatei befindet (meine befand sich unter /etc/nginx/nginx.conf )

1voto

Lassi Punkte 2932

Alpine Linux hat überhaupt keinen Standardspeicherort. Die Datei /etc/nginx/conf.d/default.conf sagt:

# Everything is a 404
location / {
    return 404;
}

# You may need this to prevent return 404 recursion.
location = /404.html {
    internal;
}

Ersetzen Sie diese durch eine Zeile wie root /var/www/localhost/htdocs um auf das gewünschte Verzeichnis zu verweisen. Dann sudo service nginx restart neu zu starten.

1voto

cnst Punkte 23716

Der Standardwert bezieht sich auf die prefix Option des configure Skript, wenn nginx kompiliert wird; hier ist ein seltsames Beispiel aus 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

In der Folge wird der Standardwert von root es auf den html Verzeichnis (gemäß der Dokumentation der root Richtlinie ), die zufällig innerhalb von prefix wie ein Blick auf die folgende Tabelle zeigt $document_root Variable aus einer einfachen Konfigurationsdatei:

# 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

Allerdings scheinen böse Distributionen wie Debian es ziemlich stark zu modifizieren, um Sie zusätzlich zu unterhalten:

% 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;

Auf dieser Instanz von Debian können Sie also sehen, dass der Root schließlich auf /usr/share/nginx/www .

Aber wie Sie anhand der Beispielkonfiguration des Servers gesehen haben, der seine $document_root Wertes über http, ist die Konfiguration von nginx so einfach, dass Sie Ihre eigene Konfiguration in ein oder zwei Zeilen schreiben können, indem Sie die erforderlichen root um Ihre Bedürfnisse genau zu erfüllen.

1voto

ShamSuf Punkte 857

Zur Datei navigieren $ cat /etc/nginx/nginx.conf

innerhalb der Datei unter dem Abschnitt http --> server --> Root

Hier sehen Sie den Standardspeicherort für das Root-Verzeichnis und alle Fehlerseiten.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X