¡Hola a todos!. En ésta entrada veremos cómo crear un nuevo sitio web mediante el servidor Apache; a esta capacidad se le llama VirtualHost, y prácticamente podemos personalizar y configurar varios sitios web de manera independiente.
Gracias al Virtual Host podemos tener en un solo servidor y múltiples sitios web con independencia de configuraciones.
Instalación de Apache (LAMP)
Ya había tocado éste tema hace mucho tiempo, pero básicamente la forma más fácil de instalar Apache (la plataforma LAMP para ser más específico…) es mediante el programa tasksel; por cuanto lo instalamos de la siguiente manera:
sudo apt install tasksel
Una vez instalado, se ejecuta y se seleccionamos con el espacio de barra la opción «LAMP Server«, y luego se presiona [ENTER] para su instalación.
sudo tasksel
Creación y configuración del nuevo sitio
Se puede decir que VirtualHost es la unidad básica que describe un sitio individual; en nuestro ejemplo, crearemos un nuevo sitio web llamado misitio.com
Copiamos el archivo /etc/apache2/sites-available/000-default.conf (el cual nos servirá como plantilla de configuración) en la misma ubicación pero con el nombre: misitio.com.conf
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/misitio.com.conf
Entramos con nuestro editor de texto favorito (nano) al nuevo archivo de configuración:
sudo nano /etc/apache2/sites-available/misitio.com.conf
Modificaremos únicamente algunos parámetros del archivo misitio.com.conf para hacer funcionar el nuevo sitio. Para el parámetro ServerName, deberemos de quitar el # del inicio de la línea.
ServerName misitio.com
ServerAdmin sudireccionde@correo.com
DocumentRoot /var/www/misitio.com
Guardamos y cerramos nano. Todos los demás parámetros se pueden personalizar también pero, realmente, los de rigor son: ServerName (indicamos el nombre del sitio, o más bien, el dominio) y DocumentRoot (ubicación de los archivos a publicar del nuevo sitio).
Después de esto, crearemos el directorio al que hemos hecho referencia en el archivo de configuración, asignaremos los permisos respectivos y asignaremos el usuario y grupo propietario a la carpeta de forma recursiva:
sudo mkdir /var/www/misitio.com
sudo chmod -R 775 /var/www/misitio.com
sudo chown -R root:www-data /var/www/misitio.com
Ahora, activaremos nuestro nuevo sitio web en Apache y recargaremos la configuración del servicio.
sudo a2ensite misitio.com
sudo service apache2 reload
Finalmente, si se tiene un servidor DNS, bastaría con crear el registro de recurso A (Address o también conocido como Host) donde misitio.com se traduciría a la IP de nuestro servidor web; si no contamos con un servidor DNS, vamos a modificar el archivo /etc/hosts de nuestro equipo cliente desde donde accederemos al sitio así:
sudo nano /etc/hosts
Y agregaremos al final del archivo la siguiente línea:
[IP del servidor] misitio.com
Donde [IP del servidor] es, sí…, la IP del servidor… Ejemplo:
192.168.1.10 misitio.com
Guardamos y cerramos nano. Si se trata de un cliente Windows, ingresamos la línea anterior en el archivo C:\Windows\system32\drivers\etc\hosts
Comprobación del funcionamiento
Vamos a crear una página web cualquiera en nuestra carpeta de publicación del nuevo sitio para comprobar que todo esta funcionando bien. Crearemos un archivo index.php con nano:
sudo nano /var/www/misitio.com/index.php
Y vamos a mostrar la típica página de información de PHP:
<?php phpinfo(); ?>
Guardamos y cerramos nano. Ahora, abrimos nuestro navegador favorito en ésta máquina e ingresamos en la barra de direcciones lo siguiente:
http://misitio.com
Y nos tendría que mostrar la página de información de PHP:
Con esto, hemos ya creado y configurado nuestro nuevo sitio web en el servidor Apache. Espero les sea de utilidad. ¡Saludos!
Gracias por el dato amigo