Aloje múltiples dominios en un servidor o IP con Apache o Nginx

Aprendamos cómo configurar Apache y Nginx para alojar varios sitios web.

El alojamiento de sitios en el servidor de la nube brinda mucha flexibilidad en comparación con el alojamiento compartido. Puede instalar lo que quiera, escalar hacia arriba o hacia abajo, y configurar para un mejor rendimiento y optimización de costos.

Si está ejecutando múltiples sitios comerciales pero no desea alojarlos por separado, puede aprovechar Virtual Server en servidores web. Echemos un vistazo a este escenario.

Tengo los siguientes dos sitios que me gustaría señalar a mi única máquina virtual en la nube.

Antes de la implementación, comprendamos cómo funciona.

El concepto de tener varios sitios web en una sola instancia de servidor web se denomina servidor virtual. Se define en el archivo de configuración junto con la URL. Cuando se realiza una solicitud a una URL definida, el servidor web serviría el tráfico desde la raíz del documento respectivo.

Configure Virtual Host en Apache para alojar múltiples dominios

  • Inicie sesión en el servidor Apache HTTP
  • Vaya a la ubicación de configuración de apache. (en la instalación predeterminada, lo encontrará aquí /etc/httpd/conf/httpd.conf)
  • Realice una copia de seguridad del archivo httpd.conf
  • Cree un contenedor VirtualHost como el que se muestra a continuación para dos dominios.
<VirtualHost *:80>
ServerAdmin [email protected]
   DocumentRoot /opt/htdocs/lab
   ServerName lab.kirukiru.es.com
   ErrorLog logs/lab.kirukiru.es.com-error_log
   CustomLog logs/lab.kirukiru.es.com-access_log common
</VirtualHost>

<VirtualHost *:80>
   ServerAdmin [email protected]
   DocumentRoot /opt/htdocs/gf-dev
   ServerName gf.dev
   ErrorLog logs/gf.dev-error_log
   CustomLog logs/gf.dev-access_log common
</VirtualHost>

Nota: Cambie el valor de ServerAdmin, DocumentRoot, ServerName, ErrorLog, CustomLog según sus requisitos.

  • Reinicie Apache HTTP y pruebe ambas URL.

Configure Virtual Host en Nginx para alojar múltiples dominios

  • Iniciar sesión en el servidor Nginx
  • Vaya a la ubicación donde instaló Nginx. (en la ubicación predeterminada; lo encontrará aquí /etc/nginx/)

Hay múltiples maneras de lograr esto. Puede modificar el archivo nginx.conf o el archivo personalizado si tiene alguno. También puede crear un custom.conf en la carpeta conf.d. Elija lo que funcione para usted y realice una copia de seguridad si modifica un archivo existente.

  • Cree un bloque de servidor para ambas URL como se muestra a continuación.
server {
listen 80;
   root /opt/htdocs/lab;
index index.html index.htm;
   server_name lab.kirukiru.es.com;
   location / {
       try_files $uri $uri/ =404;
   }
}

server {
   listen 80;
   root /opt/htdocs/gf-dev;
   index index.html index.htm;
   server_name gf.dev;
   location / {
       try_files $uri $uri/ =404;
   }
}

Nota: Cambie el valor de raíz, nombre_servidor según sus requisitos.

  • Reinicie Nginx y pruebe ambas URL

No olvide actualizar el registro DNS de su URL para que se asigne a la IP del servidor. Una vez hecho esto, debería poder acceder a las URL que se están sirviendo a través de la configuración anterior que realizó.

Conclusión

Esa fue la guía rápida para alojar múltiples dominios en una sola instancia de servidor web como Apache o Nginx. Una vez que su sitio web esté activo, no olvide probarlo contra las vulnerabilidades de seguridad.

¿Te gustó leer el artículo? ¿Qué tal compartir con el mundo?

x