Cómo configurar hosts virtuales Apache en Ubuntu 18.10

Un servidor HTTP pache, anteriormente conocido como Apache Web Server, es un software gratuito y de código abierto desarrollado y mantenido por Apache Software Foundation. Es un servidor web poderoso y uno de los más populares en todo el mundo.

En este tutorial, lo guiaremos en la configuración de hosts virtuales Apache en Ubuntu 18.10. Generalmente, Virtual Host se utiliza para alojar varios sitios web en el mismo servidor web. Si está interesado en configurar el servidor HTTP Apache, diríjase a nuestra guía paso a paso sobre cómo configurar el servidor web Apache HTTP en Ubuntu.

Configuración de hosts virtuales Apache en Ubuntu

Hay dos tipos de hosts virtuales que podemos configurar en Apache.

  • Servidor Apache único, una IP y varios sitios web =&ampgt hosts virtuales basados ​​en nombre
  • Servidor Apache único e IP única para cada sitio web =&ampgt alojamiento virtual basado en IP

Host virtual basado en IP, solo podemos configurar un sitio web en una dirección IP. Si necesita alojar varios sitios web, debe tener varias direcciones IP para ese servidor web. El host virtual basado en nombre se usa comúnmente para albergar varios sitios web en un solo servidor.

En este tutorial, aquí vamos a discutir cómo crear hosts virtuales basados ​​en nombres.

Configuración de hosts virtuales Apache basados ​​en nombres

La raíz del documento es un directorio para almacenar archivos de sitios web para un nombre de dominio para servir en respuesta a solicitudes.

1. Configuración de la estructura del directorio

En nuestra guía, usaremos la siguiente estructura de directorio, pero puede elegir cambiarla a cualquier ubicación que desee.

/ var / www /
├── fosslinuxexample1.com
│ └── public_html
├── fosslinuxexample2.com
│ └── public_html

Dado que vamos a alojar dos sitios web, necesitaremos crear dos directorios en el directorio / var / www .

Inicie la Terminal y comencemos a crear un directorio para  fosslinuxexample1.com

sudo mkdir -p /var/www/html/fosslinuxexample1.com/public_html

Cree un directorio para  fosslinuxexample2.com

sudo mkdir -p /var/www/html/fosslinuxexample2.com/public_html

Cambiar la propiedad del directorio al  usuario de apache (www-data) 

sudo chown -R www-data: /var/www/html/fosslinuxexample1.com/public_html


sudo chown -R www-data: /var/www/html/fosslinuxexample2.com/public_html

2. Configuración de permisos de carpeta

sudo chmod -R 755 /var/www/html/fosslinuxexample1.com/public_html


sudo chmod -R 755 /var/www/html/fosslinuxexample2.com/public_html

3. Creación de páginas web

Ahora, creemos páginas web para cada host. En mi ejemplo, crearé una página web para  fosslinuxexample1.com

sudo vim /var/www/html/fosslinuxexample1.com/public_html/index.html

Agregue los siguientes contenidos al archivo index.html . Este es básicamente un contenido HTML.

<html>


 <head>


 <title>fosslinuxexample1.com Test Page</title>


 </head>


 <body>


 <h1>Hello, This is a test page for fosslinuxexample1.com website</h1>


 </body>


</html>

Es hora de guardar y cerrar el archivo.

Del mismo modo, crearemos una página web para  fosslinuxexample2.com.

sudo vim /var/www/html/fosslinuxexample2.com/public_html/index.html

Agregue los siguientes contenidos al archivo.

<html>


 <head>


 <title>fosslinuxexample2.com Test Page</title>


 </head>


 <body>


 <h1>Hello, This is a test page for fosslinuxexample2.com website</h1>


 </body>


</html>

Guarde y cierre el archivo.

4. Creación de hosts virtuales

Generalmente, los archivos de configuración de Apache Virtual Hosts se almacenan en el directorio / etc / apache2 / sites-available/ etc / apache2 / sites-enabled . Comience creando un host virtual para  fosslinuxexample1.com.

sudo vim /etc/apache2/sites-available/fosslinuxexample1.com.conf

Agregue los siguientes contenidos al archivo.

<VirtualHost *:80>


    ServerName fosslinuxexample1.com


    ServerAlias www.fosslinuxexample1.com


    ServerAdmin webmaster@fosslinuxexample1.com


    DocumentRoot /var/www/html/fosslinuxexample1.com/public_html





<Directory /var/www/html/fosslinuxexample1.com/public_html>


        Options -Indexes +FollowSymLinks


        AllowOverride All


    </Directory>


    ErrorLog ${APACHE_LOG_DIR}/fosslinuxexample1.com-error.log


    CustomLog ${APACHE_LOG_DIR}/fosslinuxexample1.com-access.log combined


</VirtualHost>








Guardar y salir del archivo. En líneas similares, cree un host virtual para  fosslinuxexample2.com

sudo vim /etc/apache2/sites-available/fosslinuxexample2.com.conf

Agregue los siguientes contenidos al segundo sitio web.

<VirtualHost *:80>


    ServerName fosslinuxexample2.com


    ServerAlias www.fosslinuxexample2.com


    ServerAdmin webmaster@fosslinuxexample2.com


    DocumentRoot /var/www/html/fosslinuxexample2.com/public_html


    <Directory /var/www/html/fosslinuxexample2.com/public_html>


        Options -Indexes +FollowSymLinks


        AllowOverride All


    </Directory>


    ErrorLog ${APACHE_LOG_DIR}/fosslinuxexample2.com-error.log


    CustomLog ${APACHE_LOG_DIR}/fosslinuxexample2.com-access.log combined


</VirtualHost>

Guardar y salir del archivo.

5. Habilitación de archivos de configuración de host virtual

Hay diferentes formas de habilitar hosts virtuales. La forma más sencilla es habilitar el host virtual mediante el comando a2ensite . Alternativamente, puede habilitarlo creando enlaces simbólicos al directorio / etc / apache2 / sites-enabled.

Ahora deberíamos deshabilitar  000-default.conf y habilitar los archivos de host virtual recién creados

Utilice esta línea de comando para deshabilitar el host virtual predeterminado.

sudo a2dissite 000-default.conf

Los siguientes comandos habilitarán nuevos hosts virtuales.

sudo a2ensite fosslinuxexample1.com.conf


sudo a2ensite fosslinuxexample2.com.conf

Habilite el host virtual creando enlaces simbólicos.

Si habilitó el host virtual con el  comando a2ensite, no es necesario ejecutar los siguientes comandos:

sudo  ln -s /etc/apache2/sites-available/fosslinuxexample1.com.conf /etc/apache2/sites-enabled/


sudo  ln -s /etc/apache2/sites-available/fosslinuxexample2.com.conf /etc/apache2/sites-enabled/

Verifique la sintaxis de los archivos de configuración.

sudo apachectl configtest

Reinicie Apache para activar la nueva configuración.

sudo systemctl restart apache2

6. Prueba de hosts virtuales

Antes de probar las páginas web, necesitamos modificar el archivo / etc / hosts para configurar la IP del servidor.

sudo vim /etc/hosts

Agregue la siguiente línea al archivo de hosts. Recuerde reemplazar 10.94.12.217 en las siguientes líneas de comando con la IP de su servidor. Cuando haya terminado, guarde y cierre el archivo.

10.94.12.217 fosslinuxexample1.com


10.94.12.217 fosslinuxexample2.com

¡Por último, inicie su navegador web favorito y comience a navegar por los sitios web!

fosslinuxexample1.com

Navegar por el sitio web desde Apache Virtual Host
Navegar por el sitio web desde Apache Virtual Host

fosslinuxexample2.com

Navegar por el sitio web desde Apache Virtual Host
Navegar por el sitio web desde Apache Virtual Host

Si puede ver las páginas web que creó, felicidades por haber creado con éxito los hosts virtuales. ¿Tienes alguna pregunta? ¿Cómo funcionó para ti?

Leave a Comment

Your email address will not be published. Required fields are marked *

Hazlo Linux