Wie mache ich den Nginx-Ordner verschiebbar?

Wie mache ich den Nginx-Ordner verschiebbar?

Wenn ich derzeit nginx kompiliere (im Verzeichnis /home/parth/nginx), bettet es das bereitgestellte Präfix ein, um das Skript in der nginx-Binärdatei zu konfigurieren. Wenn ich diesen Ordner jetzt verschiebe (sagen wir nach /tmp), bricht es mit der folgenden Fehlermeldung ab. Gibt es eine Möglichkeit, Verzeichnisse für Protokolldateien zu konfigurieren?

./nginx -p /tmp/ -c /tmp/conf/nginx.conf

nginx: [alert] Fehlerprotokolldatei konnte nicht geöffnet werden: open() "/home/parth/nginx/var/logs/error.log" fehlgeschlagen (2: Keine solche Datei oder kein solches Verzeichnis) 2012/08/27 02:22:26 [emerg] 23782#0: unbekanntes Protokollformat "main" in /tmp/conf/nginx.conf:25

== nginx.conf-Datei ==

#user  nobody;
worker_processes  1;

error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        access_log  logs/host.access.log  main;

        location / {
             root   html;
             index  index.html index.htm;
         }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
         error_page   500 502 503 504  /50x.html;
         location = /50x.html {
              root   html;
         }

... der Rest der Datei hat die Konfiguration auskommentiert und schließt Klammern. root html;

Antwort1

[emerg] 23782#0: unbekanntes Protokollformat „main“ in /tmp/conf/nginx.conf:25

#log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
#                  '$status $body_bytes_sent "$http_referer" '
#                  '"$http_user_agent" "$http_x_forwarded_for"';

Entfernen Sie das Kommentarzeichen aus der log_formatZeile und versuchen Sie es erneut.

Antwort2

Verwenden Sie dieerror_logKonfigurationsdirektive.

verwandte Informationen