centos virtual - nginx directorio de sitios faltantes disponibles




host apache (3)

Si prefiere un enfoque más directo, uno que NO se meta con el enlace simbólico entre /etc/nginx/sites-available y /etc/nginx/sites-enabled , haga lo siguiente:

  1. Ubique su archivo nginx.conf. Probablemente en /etc/nginx/nginx.conf
  2. Encuentra el bloque http.
  3. En algún lugar del bloque http, escriba include /etc/nginx/conf.d/*.conf; Esto le dice a nginx que conf.d cualquier archivo en el directorio conf.d que termina en .conf . (Lo sé: es extraño que un directorio pueda tener un.)
  4. Cree el directorio conf.d si no existe ya (según la ruta en el paso 3). Asegúrate de darle los permisos / propiedad correctos. Raíz probable o datos de www.
  5. Mueva o copie sus archivos de configuración por separado (como lo hizo en /etc/nginx/sites-available ) en el directorio conf.d
  6. Recargar o reiniciar nginx.
  7. Coma un cono de helado.

Todos los archivos .conf que coloque en el directorio conf.d partir de ahora se activarán siempre que vuelva a cargar / reiniciar nginx.

Nota: Puede usar el conf.d y sites-enabled + sites-available mismo tiempo si lo desea. Me gusta probar en mi cuadro de desarrollo usando conf.d Se siente más rápido que el enlace simbólico y la falta de enlace.

Instalé Nginx en Centos 6 y estoy tratando de configurar hosts virtuales. El problema que estoy teniendo es que parece que no puedo encontrar el directorio /etc/nginx/sites-available .

¿Hay algo que deba hacer para crearlo? Sé que Nginx está funcionando porque puedo buscarlo.


Bueno, creo que nginx por sí mismo no tiene eso en su configuración, pero el paquete mantenido por Ubuntu lo hace como una convención para imitar la configuración de Apache, puede crearlo usted mismo si lo desea.

Cree /etc/nginx/sites-available y /etc/nginx/sites-enabled y luego edite el bloque http dentro de /etc/nginx/nginx.conf y agregue esta línea

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

por supuesto, todos los archivos estarán dentro de sites-available y luego creará un enlace simbólico para ellos dentro de los sites-enabled


Nginx puede actuar como un servidor proxy inverso que funciona como un administrador de proyectos. Cuando recibe una solicitud, la analiza y reenvía la solicitud a los usuarios (miembros del proyecto) o se maneja. Nginx tiene dos formas de gestionar una solicitud según su configuración.

  • servir la solicitud
  • reenviar la solicitud a otro servidor

    server{
     server_name mydomain.com sub.mydomain.com;
    
     location /{ 
      proxy_pass http://127.0.0.1:8000;  
      proxy_set_header Host $host;
      proxy_pass_request_headers on;  
     }
    
     location /static/{
       alias /my/static/files/path;
     }
    

    }

Servidor de la solicitud

Con esta configuración, cuando la URL de la solicitud es mydomain.com/static/myjs.js se devuelve el archivo myjs.js en la carpeta /my/static/files/path . Cuando configura nginx para servir archivos estáticos, maneja la solicitud en sí.

reenviar la solicitud a otro servidor

Cuando la url de solicitud es mydomain.com/dothis nginx reenviará la solicitud a http://127.0.0.1:8000 . El servicio que se ejecuta en el puerto localhost 8000 recibirá la solicitud y devolverá la respuesta a nginx y nginx devolverá la respuesta al cliente.

Cuando ejecute el servidor node.js en el puerto 8000 nginx reenviará la solicitud a node.js. Escribe la lógica de node.js y maneja la solicitud. Eso es todo, tienes tu servidor nodejs corriendo detrás del servidor nginx.

Si desea ejecutar cualquier otro servicio que no sea nodejs, simplemente ejecute otro servicio como Django, flask, php en diferentes puertos y configúrelo en nginx.





nginx centos virtualhost