free - ¿Nginx no está recogiendo el sitio en sitios habilitados?




install windows (4)

Después de más de 10 horas de investigación, no he descubierto por qué esto no funciona. Estoy intentando mover mi servidor local a la carpeta habilitada para sitios que está en / etc / nginx / sites-enabled / default.

ES un enlace simbólico de la carpeta de sitios disponibles. Cuando uso la siguiente configuración obtengo un "no se puede conectar" usando localhost: 8080 como mi dirección

nginx.conf (/usr/local/nginx/conf/nginx.conf):

user  www-data;
worker_processes  2;

events {
    worker_connections  1024;
}


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

    sendfile        on;

    keepalive_timeout  65;

    include /etc/nginx/sites-enabled/*; 
}

sitios disponibles (/ etc / nginx / sites-available / default):

server {
  listen   8080;
  root /home/myusername/myown/customdirectory;
  index index.php index.html index.htm;
  server_name localhost;

    location / {
        try_files $uri $uri/ /index.html;
    }

    location /doc/ {
        alias /usr/share/doc/;
        autoindex on;
        allow 127.0.0.1;
        allow ::1;
        deny all;
    }


    error_page 404 /404.html;

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/www;
    }

    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        include fastcgi_params;
    }

    location ~ /\.ht {
        deny all;
    }
}

Puedo hacer que esto funcione si incluyo la información relevante de los sitios disponibles en el nginx.conf, ¿no puedo entender por qué no funciona de esta manera?

¡Gracias!


Answers

Incluir sites-available/default en sites-enabled/default . Requiere solo una línea.

En sites-enabled/default (¿nueva versión de configuración?):

Parece que la ruta de inclusión es relativa al archivo que la incluyó

include sites-available/default;

Ver la documentación de include .

Creo que ciertas versiones de nginx permiten incluir / vincular a otros archivos simplemente por tener una sola línea con la ruta relativa al archivo incluido. (Al menos eso es lo que parecía en algunos archivos de configuración "heredados" que he estado usando, hasta que una nueva versión de nginx los rompió).

En sites-enabled/default (¿versión de configuración anterior?):

Parece que la ruta de inclusión es relativa al archivo actual

../sites-available/default

Yo tuve el mismo problema. Fue porque accidentalmente utilicé una ruta relativa con el enlace simbólico.

¿Estás seguro de que usaste rutas completas, por ejemplo:

ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/example.com.conf

Cambiando de:

include /etc/nginx/sites-enabled/*; 

a

include /etc/nginx/sites-enabled/*.*; 

solucionado mi problema


Un "código de retorno" de -9 indicates que el proceso se canceló con SIGKILL. Si no lo está haciendo usted mismo, el asesino de OOM es probablemente el culpable.







nginx