Cómo alojar varios sitios web en un VPS Ubuntu 18.04 o en un servidor dedicado

Una de las ventajas de usar Ubuntu 18.04 y Apache es la capacidad de alojar varios sitios web en un solo servidor. Esto es muy económico ya que solo puede usar un único servidor VPS para todos sus dominios.
Esta característica se conoce como hosting virtual. Es solo el aspecto de ejecutar diferentes dominios, p. Ej. B. example.com y test.com en una única dirección IP de Ubuntu 18.04.
El host virtual Apache dirige a los visitantes a varias carpetas donde se encuentra el archivo de dominio. El cliente que visita el sitio web nunca sabrá si el servidor es responsable de otros hosts virtuales.
No hay límite para la cantidad de sitios que puede alojar en su servidor Apache en Ubuntu 18.04. Sin embargo, asegúrese de que su servidor pueda manejar el tráfico y el espacio de almacenamiento.
En esta guía, lo guiaremos a través del proceso de ejecutar dos sitios diferentes en una sola instancia de Ubuntu 18.04 VPS.
Nota especial: Puede encontrar los mejores servicios de hosting VPS de Linux en la página “Mejores servicios de hosting de Linux” de Hosting Más Barato o en la página “Mejor hosting de VPS”.
En caso de que no tenga Apache instalado, puede ejecutar el siguiente comando en su servidor Ubuntu 18.04:
$ sudo apt-get install apache2
También usamos example.com y test.com como valores de dominio ficticios. Más adelante le mostraremos cómo editar el archivo de hosts locales en su computadora para probar los hosts virtuales.
Primero, necesitamos crear una estructura de directorio que albergará los datos de nuestros sitios web. Apache tiene un directorio de nivel superior en el que busca sitios web en / var / www Camino. Necesitamos expandir esto y crear un subdirectorio para nuestros dos dominios.
Para hacer esto, ejecute los siguientes comandos en una ventana de terminal:
$ sudo mkdir -p /var/www/test.com/public_html $ sudo mkdir -p /var/www/example.com/public_html
Los directorios creados anteriormente pertenecen al usuario root. Por lo tanto, debemos cambiar la propiedad del directorio para que el usuario que haya iniciado sesión actualmente pueda cambiar los archivos. Usaremos eso chown Comando para hacer esto con la siguiente sintaxis
$ sudo chown -R $USER:$USER /var/www/example.com/public_html $ sudo chown -R $USER:$USER /var/www/test.com/public_html
Necesitamos dar acceso de lectura a los dos directorios creados anteriormente. Esto hace que los sitios web sean de acceso público y ambos sitios web se proporcionan correctamente a pedido de un navegador.
Para hacer esto, usamos el siguiente comando:
$ sudo chmod -R 755 /var/www
Nuestros archivos y la estructura de directorios ahora están configurados correctamente. A continuación, usaremos el editor Nano para crear un archivo index.html de muestra para cada sitio web usando los siguientes comandos:
test.com
$ sudo nano /var/www/test.com/public_html/index.html
Copie y pegue el siguiente texto en el editor nano
<html> <body> This is our test.com website </body> </html>
example.com
$ sudo nano /var/www/example.com/public_html/index.html
Copie y pegue el siguiente texto en el editor nano
<html> <body> This is our example.com website </body> </html>
Recuerde cerrar y guardar cada archivo cuando haya terminado de editar presionando CTR + X. y Y..
La primera vez que se instala Apache en un servidor Ubuntu 18.04, se crea un archivo de host virtual predeterminado en la ruta /etc / apache2 / sites-available / 000-default.conf.
Necesitamos copiar este archivo y usarlo para configurar nuestros hosts virtuales text.com y example.com. Para hacer esto, ejecute el siguiente comando
$ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/test.com.conf $ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf
Los archivos de configuración de Apache deben terminar con la extensión de archivo “.config”.
Después de copiar los archivos, abra el primer archivo de hosts virtuales en un editor nano para editar su contenido con el siguiente comando:
$ sudo nano /etc/apache2/sites-available/test.com.conf
Luego sobrescriba los valores con el siguiente texto:
<VirtualHost *:80> ServerAdmin admin@test.com ServerName test.com ServerAlias www.test.com DocumentRoot /var/www/test.com/public_html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Como puede ver arriba, nos referimos al directorio /var/www/test.com/public_html porque aquí es donde almacenaremos los archivos de nuestro sitio web test.com.
Necesitamos repetir el mismo procedimiento para nuestro host virtual example.com
$ sudo nano /etc/apache2/sites-available/example.com.conf
Luego sobrescriba los archivos con el siguiente contenido:
<VirtualHost *:80> ServerAdmin admin@example.com ServerName example.com ServerAlias www.example.com DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Creamos dos archivos de configuración para nuestros hosts virtuales. Ahora necesitamos activarlos con los siguientes comandos:
$ sudo a2ensite test.com.conf $ sudo a2ensite example.com.conf
Una vez que haya agregado un host virtual en su servidor Ubuntu 18.04, deberá reiniciar Apache con el siguiente comando:
$ sudo service apache2 restart
Sus hosts virtuales deberían estar operativos. Sin embargo, dado que usamos valores ficticios para propósitos de prueba, necesitamos editar nuestro archivo de hosts locales (en la computadora local) y no el servidor VPS.
Esto permite que nuestra computadora local determine la dirección IP pública correcta de nuestro servidor Ubuntu 18.04. Suponiendo que la dirección IP de su servidor público Ubuntu 18.04 es 222.222.222.222, debe agregar estas entradas en su computadora local.
Si está ejecutando Linux, deberá editarlo / etc / hosts Archivo con el siguiente comando
$ sudo nano /etc/hosts
Luego agregue las siguientes entradas y guarde el archivo.
111.111.111.111 example.com 111.111.111.111 test.com
Si su computadora local está ejecutando Windows, deberá editar el archivo c: windows system32 drivers etc hosts Utilice un editor de texto como el Bloc de notas y agregue las dos entradas anteriores como se muestra a continuación.
Recuerde reemplazar 111.111.111.111 con la dirección IP pública real de su servidor
Finalmente, debe visitar example.com y test.com en su navegador. Si ha seguido los pasos correctamente, debería ver el contenido que creamos para los hosts virtuales (ver más abajo).
Test.com
Example.com
Es así de fácil alojar varios sitios web en un solo servidor Ubuntu 18.04. Recuerde, puede replicar la idea de alojar un número ilimitado de hosts virtuales. Esto es muy útil si ejecuta un sitio web especializado pero solo desea pagar tarifas de suscripción para un solo servidor VPS.