Como crear Host Virtuales con Apache en Centos 7

apache-server.fwInstalar Apache en Centos 7

#yum install -y httpd

Permitir que apache arranque automáticamente cada ves que Centos inicie

#systemctl enable httpd.service

Desactivar Firewall

#systemctl disable firewalld

Detener Firewall

#systemctl stop firewalld

Checar estado de firewall

#systemctl status firewalld

Crear Directorios web

#mkdir -p /var/www/ejemplo1.com/public_html
#mkdir -p /var/www/ejemplo2.com/public_html

Asignamos permisos de quienes crean leen y escriben en los directorios

#chown -R apache:apache /var/www/ejemplo1.com
#chown -R apache:apache /var/www/ejemplo2.com

Crear los archivos Virtual Host

#mkdir /etc/httpd/sites-available
#mkdir /etc/httpd/sites-enabled

Editamos el  archivo httpd.conf

#nano /etc/httpd/conf/httpd.conf

Y al final agregamos esta linea

IncludeOptional sites-enabled/*.conf

Reiniciamos Apache con

#apachectl restart

o

#service httpd restart

Creamos el archivo de configuración de cada host virtual:

#nano /etc/httpd/sites-available/ejemplo1.com.conf
#nano /etc/httpd/sites-available/ejemplo2.com.conf

y dentro de cada archivo agregamos la configuración de cada sitio virtual.

<VirtualHost *:80>
ServerName www.ejemplo1.com
ServerAlias ejemplo1.com
DocumentRoot /var/www/ejemplo1.com/public_html
</VirtualHost>

Creamos los index.html de cada directorios

#nano /var/www/ejemplo1.com/public_html/index.html
#nano /var/www/ejemplo2.com/public_html/index.html

y colocamos este código en HTML en cada index de cada directorio (puede colocar todo su sitio web)

<h1>Henry Vallejo Ejemplo 1</h1>
<p>Funcionando! Ejemplo1.com</p>

Ahora activamos los archivos de Virtual Host mediante estos enlaces simbólicos

Para activar el dominio del ejmeplo1.com y ejmeplo2.com:

#ln -s /etc/httpd/sites-available/ejemplo1.com.conf /etc/httpd/sites-enabled/ejemplo1.com.conf
#ln -s /etc/httpd/sites-available/ejemplo2.com.conf /etc/httpd/sites-enabled/ejemplo2.com.conf

Nota:

debemos recordar que para que nuestra maquina cliente pueda encontrar a nuestro servidor, se debe indicar en el archivo hosts, donde buscar nuestros servidores virtuales.

  • En el caso de windows se encuentran ubicados en:

c:\Windows\System32\drivers\etc\

y lo editamos con el block de notas

  • En Linux editamos
# nano /etc/hosts

o

#vi /etc/hosts

al editar el archivo agregamos estas líneas (en mi caso):

192.168.1.115 ejemplo1.com
192.168.1.115 ejemplo2.com

(la IP es la de la máquina donde esta instalado el apache, es decir nuestro server)

NOTA:

Link para instalar suphp en centos (no probado)