Configurar virtual hosts

Configurar hosts virtuales (virtual hosts)

Con el servidor Apache podemos tener múltiples sitios web o aplicaciones web ejecutándose en el mismo servidor físico, y acceder a cada uno usando un nombre de dominio personalizado utilizando virtual hosts. Esto se conoce como alojamiento virtual , y cada vhost (host virtual) se puede asignar a un subdirectorio diferente del servidor.

Esta característica es especialmente útil en escenarios de desarrollo, ya que permite a los desarrolladores aislar y acceder a diferentes aplicaciones utilizando nombres de dominio únicos. Por ejemplo, los dominios https://web1.localhttps://web2.local  podrían apuntar a dos aplicaciones separadas en el mismo servidor.

Este tutorial pretende guíarte a través del proceso de configuración de un nuevo vhost o host virtual con XAMPP, al crear y configurar un vhost de ejemplo llamado wordpress.local.

Pasos para crear vhosts en Mac y Windows

  1. Habilitar el archivo de configuración httpsd-vhosts.conf.
  2. Cambia a tu directorio de instalación XAMPP y modifica el archivo httpsd.conf usando un editor de texto.
    Ruta en MAC: /Aplicaciones/XAMPP/etc/httpsd.conf
    Ruta en WINDOWS: C:\xampp\apache\conf\httpsd.conf
    Dentro del archivo, busca la siguiente línea y elimina el símbolo de almohadilla (#) al comienzo de la línea.
    Include etc/extra/httpsd-vhosts.conf
    httpsd-vhosts.conf

Dentro de este archivo nos asegurarnos de que el módulo Rewrite está habilitado, para ello buscamos la siguiente línea:
LoadModule rewrite_module modules/mod_rewrite.so
y igual que antes eliminamos la almohadilla (#).

A continuación, tenemos que editar el archivo httpsd-vhosts.conf  y reemplazar el contenido de este archivo con las siguientes directivas:

Directivas para Mac: /Aplicaciones/XAMPP/etc/extra/httpsd-vhosts.conf

<VirtualHost *: 80>
       DocumentRoot "/Aplicaciones/XAMPP/xamppfiles/htdocs/"
       ServerName localhost
</ VirtualHost>

<VirtualHost *:80>
    DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs/wordpress"
    ServerName wordpress.local
    # A partir de aquí, las siguientes líneas son opcionales
    ServerAlias www.wordpress.local
    DirectoryIndex index.php index.html
    <Directory /Applications/XAMPP/xamppfiles/htdocs/wordpress>
        IndexOptions +FancyIndexing NameWidth=*
        Options Includes FollowSymLinks Indexes
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    ErrorLog "logs/mandobox-error_log"
    CustomLog "logs/mandobox-access_log" common
</VirtualHost>

Directivas para Windows: C:\xampp\apache\conf\extra\httpsd-vhosts.conf

<VirtualHost *:80>
   DocumentRoot "C:/xampp/htdocs/"
   ServerName localhost
</VirtualHost>

<VirtualHost *:80>
   DocumentRoot "C:/xampp/apps/htdocs/wordpress"
   ServerName wordpress.local
   # líneas opcionales
</VirtualHost>

Esto contiene dos bloques de configuración de host virtual:

  • El primer bloque es el virtual host predeterminado o alternativo, que se utiliza para todas las solicitudes que no coinciden con los bloques subsiguientes.
  • El segundo bloque configura un virtual host llamado wordpress.local. La directiva DocumentRoot especifica el directorio que se utilizará al atender solicitudes para este host virtual (en este caso, el directorio de instalación de WordPress), mientras que la directiva ServerName especifica el nombre de dominio personalizado para el host virtual.
  • <Directory></Directory> se utilizan para encerrar un grupo de directrices que se aplicarán solo al directorio nombrado, los subdirectorios de ese directorio y los archivos dentro de los directorios respectivos.

Agregar más hosts virtuales

Para agregar más virtual hosts, simplemente duplica el segundo bloque de host virtual y modifica las directivas DocumentRoot y ServerName según sus requisitos.

  1. Reinicia Apache utilizando el panel de control XAMPP para que los cambios surtan efecto.
    Para reiniciar el servicio Apache en el servidor XAMPP para Mac, abrimos el panel de control y pulsamos Restart.
    panel-xampp-mac
    En el panel de control XAMPP de Windows pulsamos Stop y acontinuación Start para reiniciar el módulo Apache.
    panel-xampp-windows

En este punto, todos tus virtual hosts ya estarán configurados. Sin embargo, si intentas navegar al dominio wordpress.local, el navegador mostrará un aviso, ya que este dominio no existe en realidad.

ERR_NAME_RESOLUTION_FAILED

Para resolver esto, es necesario asignar el dominio personalizado a la dirección IP local. Para hacerlo, tendremos que editar el archivo hosts el cual actuara como un servidor DNS a nivel local.
La ruta o path si trabajamos con Mac es:

/etc/hosts

Si trabajamos con Windows entonces el archivo hosts lo encontraremos en:

C:\windows\system32\drivers\etc\hosts

y agregar la siguiente línea:
127.0.0.1 wordpress.local
Atchivo host

Esta configuración se encarga de asignar el nombre de dominio wordpress.local a la máquina local, que siempre tiene la dirección IP 127.0.0.1.

Llegado a este punto, ya deberías poder acceder a la URL https://wordpress.local en la barra de direcciones del navegador y ver tu instalación de WordPress.

Instalación de wordpress

Comentarios y opiniones

Puede que tarde en responder, se paciente.

*
*