Configurar VirtualHost en apache2

Tema en 'Manuales' iniciado por Mandr4k3, 6 Jul 2017.

  1. Mandr4k3

    Mandr4k3 Usuario Casual nvl. 2
    47/82

    Registrado:
    8 Jun 2006
    Mensajes:
    2.845
    Me Gusta recibidos:
    8
    Una de las cosas que más me preguntan es como configurar diversos virtualhost en apache 2 sobre una distribución de Linux.

    Para este sencillo tutorial me basaré en la distribución Debian 9.

    Lo primero es saber si tenemos apache2 instalado en nuestra maquina:

    Para todos los comandos siempre como super usuario (su)

    Insertar CODE, HTML o PHP:
    # dpkg -l |grep apache
    Si no aparece nada en la lista, quiere decir que no esta instalado, por lo que procederemos a instalarlo, junto a unas útiles herramientas de apache para que se pueda trabajar con SSL junto con el módulo FastCGI para PHP para acelerar la interpretación de código:

    Insertar CODE, HTML o PHP:
    # apt-get install apache2 apache2-dev apache2-utils  php7.0-fpm
    Una vez instalado, procederemos a configurar nuestros virtualhost , ¿que es un virtualhost? cuando uno administra servidores, es probable que quiera tener múltiples dominios, todos en una sola maquina, claro está, dependiendo de lo que consuman las aplicaciones en aquellas maquinas, esto es lo que hacen los reseller de webhosting con herramientas como cpanel.

    Manos a la obra

    Editaremos el virtualhost por defecto, que tiene como ubicación /var/www/html/
    Usaremos el comando VIM, como todo un vikingo de linux
    Insertar CODE, HTML o PHP:
    # vim /etc/apache2/sites-available/000-default.conf
    [​IMG]

    Podemos observar algunas variables sin comentario como ServerAdmin y DocumentRoot, y una variable con comentario ServerName

    ServerName = dns público que tendra ese virtualhost
    ServerAdmin = Correo del administrador de sistemas, ahí llegaran notificaciones de errores criticos
    DocumentRoot = Ubicación donde estará nuestro sitio web o aplicación
    ErrorLog = ubicación de Log de errores de apache y php
    CustomLog = ubicación de Log de avisos de sistema que no sean errores ni warning

    Recomiendo ser ordenado, si desean agregar un nuevo virtualhost copien el archivo default.conf y renombrelo como desee ej:

    Insertar CODE, HTML o PHP:
    # cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/001-minuevositio.conf
    Personalizando el nuevo archivo *.conf

    En este ejemplo añadiré etiquetas <Directory> al archivo con algunas directrices

    [​IMG]

    Estas se usan para englobar un grupo de directivas que se aplicarán solamente al directorio especificado y a sus subdirectorios. Puede incluir a cualquier directiva cuyo uso esté permitido en un contexto <directory>. Directory-path puede ser tanto la ruta completa a un directorio.

    En este caso:

    Insertar CODE, HTML o PHP:
    <Directory />
    AllowOverride None
    </Directory>
    Se refiere a que no sobreescriba las reglas de algún archivo .htaccess presente en el directorio.

    Una vez editado nuestro archivo, grabamos y quitamos ( :wq )

    Añadimos el nuevo archivo de configuración al proceso de apache

    Insertar CODE, HTML o PHP:
    # a2ensite 001-minuevositio.conf
    Luego reiniciamos el servicio de apache

    Insertar CODE, HTML o PHP:
    # /etc/init.d/apache2 restart
    o

    Insertar CODE, HTML o PHP:
    # systemctl apache2 restart
    Para añadir el módulo de urls amigables o rewrite

    Insertar CODE, HTML o PHP:
    # a2enmod mod_rewrite
    Y reiniciar de nuevo el servicio
    Insertar CODE, HTML o PHP:
    # systemctl apache2 restart
    O si lo prefieren volver a cargar apache2 sin necesidad de bajar el servicio:

    Insertar CODE, HTML o PHP:
    # systemctl apache2 reload
    Espero sea de utilidad.

    Saludos,
     
    #1 Mandr4k3, 6 Jul 2017
    Última edición: 6 Jul 2017
    A fearman22 le gusta esto.
  2. fearman22

    fearman22 Super Moderador
    Super Moderador
    262/325

    Registrado:
    8 Oct 2008
    Mensajes:
    16.901
    Me Gusta recibidos:
    991
    Gracias compa, excelente post!
     
  3. PIXTRO

    PIXTRO Usuario Casual nvl. 2
    47/82

    Registrado:
    15 Feb 2008
    Mensajes:
    4.261
    Me Gusta recibidos:
    28
    muy buen post se agradece