Una macro de Apache tiene un nombre, algunas variables y líneas de códigos de configuración de Apache. Cuando desea utilizar la macro, la llama por el nombre de la macro, pasa los valores para cada variable, las variables se reemplazan con el valor en la macro y luego la macro se expande. Hace que la configuración sea muy fácil y modular.
En este artículo, le mostraré cómo usar la macro para administrar Apache 2 VirtualHost. Entonces empecemos.
Configuración de VirtualHost:
En este artículo, voy a implementar la configuración de VirtualHost como se muestra en la figura 1 con macro. Tendré 3 usuarios Beto, Alicia y linda. Beto alojará su sitio web www.Ejemplo 1.com en el servidor Apache con la dirección IP 192.168.21.166. De la misma manera Alicia y linda alojará sus sitios web www.ejemplo2.com y www.ejemplo3.com respectivamente en el mismo servidor Apache.
Fig 1: VirtualHost basado en nombre en Apache 2
Este artículo es una extensión del artículo que escribí sobre la configuración de Apache VirtualHost en Ubuntu 18.04 LTS que puede leer en Cómo configurar Apache VirtualHost en Ubuntu 18.04 LTS (enlace ese artículo aquí).
Requerimientos:
Si es nuevo en la configuración de Apache 2 y desea aprender todo paso a paso, lea mi artículo Cómo configurar Apache VirtualHost en Ubuntu 18.04 LTS (enlace ese artículo aquí) primero. De este artículo, debe seguir las secciones que se indican a continuación:
- Instalación del servidor web Apache 2
- Configurando DNS
- Estructuras de directorio
- Crear usuarios
Una vez que siga estas secciones del artículo de referencia, puede continuar con las siguientes secciones de este artículo.
Habilitando el módulo mod_macro de Apache 2:
Por defecto, mod_macro el módulo no está habilitado en el servidor web Apache 2 en Ubuntu 18.04 LTS. Pero, el módulo está ahí y puede habilitarlo fácilmente con el a2enmod mando.
Para permitir mod_macro módulo, ejecute el siguiente comando:
$ sudo a2enmod macromod_macro debe estar habilitado.
Creando una macro para VirtualHost:
El directorio predeterminado donde debe colocar sus archivos de macro en Ubuntu 18.04 LTS es / etc / apache2 / conf-available /
.
Primero, navegue hasta el directorio / etc / apache2 / conf-available /
como sigue:
Ahora, cree un nuevo archivo de macro vhost-macro.conf
con el siguiente comando:
Se debe abrir un editor de texto.
Ahora, escriba las siguientes líneas:
ServerName $ dominio
ServerAlias www.$ dominio
DocumentRoot "/ www / $ dominio / www / public_html"
Opciones -FollowSymLinks + MultiViews + Índices
Permitir anular todo
Requerir todo concedido
ErrorLog "/ www / $ dominio / www / logs / error.Iniciar sesión"
CustomLog "/ www / $ dominio / www / logs / access.log "combinado
Finalmente, la macro tiene el siguiente aspecto. Ahora, guarde el archivo presionando
Usando macro para cada VirtualHost:
En el artículo anterior, creé archivos de configuración de VirtualHost para Beto (www.Ejemplo 1.com.conf), Alicia (www.ejemplo2.com.conf) y linda (www.ejemplo3.com.conf).
Ahora es el momento de reemplazarlo con macro.
Primero, navegue hasta el directorio de sitios predeterminado de Apache 2 / etc / apache2 / sites-available
como sigue:
Entonces, abra el archivo de configuración de VirtualHost para Beto (www.Ejemplo 1.com.conf) de la siguiente manera:
$ sudo nano www.Ejemplo 1.com.conf
Eso es un montón de líneas. Bueno, borra todas estas líneas. Ya no los necesitamos.
Simplemente ingrese la siguiente línea y guarde el archivo presionando
Ahora, haz lo mismo para Alicia (www.ejemplo2.com.conf).
$ sudo nano www.ejemplo2.com.conf
Elimine todas las líneas, escriba la siguiente línea y guarde el archivo.
Utilice VHost example2.com
De nuevo, haz lo mismo para linda (www.ejemplo3.com.conf).
$ sudo nano www.ejemplo3.com.conf
Elimine todas las líneas, escriba la siguiente línea y guarde el archivo.
Utilice VHost example3.comHabilitación de macro:
Ahora tienes que habilitar la macro vhost-macro.conf que acabas de crear.
Para hacer eso, ejecute el siguiente comando:
$ sudo a2enconf vhost-macroLa macro vhost-macro está habilitado.
Ahora, reinicie el servicio Apache 2 de la siguiente manera:
$ sudo systemctl reiniciar apache2
Prueba de VirtualHosts basados en macros:
Ahora, intente acceder a los sitios web www.Ejemplo 1.com, www.ejemplo2.com, www.ejemplo3.com.
Como puede ver, todos estos sitios web funcionan como se esperaba.
¿Viste cómo las macros marcan la diferencia?? Anteriormente, tuvimos que poner muchas líneas de códigos en el archivo de configuración de VirtualHost. Pero ahora, solo una línea de código es suficiente para configurar un VirtualHost. Hace que la configuración de VirtualHost sea muy fácil.
Entonces, así es como usa las macros de Apache 2 para simplemente la configuración de VirtualHost en Ubuntu 18.04 LTS. Gracias por leer este artículo.