Despliegue y Optimización de Sitios Web: Hosting Virtual, DNS y HTTP/2

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 6,08 KB

Configuración de Hosting Virtual con Apache

Conceptos Fundamentales de Hosting Virtual

El término Hosting virtual se refiere a la capacidad de hacer funcionar más de un sitio web (tales como www.company1.com y www.company2.com) en una sola máquina. Los sitios web virtuales pueden estar “basados en direcciones IP”, lo que significa que cada sitio web tiene una dirección IP diferente, o “basados en nombres”, lo que implica que con una sola dirección IP están funcionando sitios web con diferentes nombres (de dominio).

Apache fue uno de los primeros servidores web en soportar hosting virtual basado en direcciones IP. En esta práctica, utilizaremos la técnica basada en nombres, compartiendo la misma IP.

El servidor web Apache2 se instala por defecto con un host virtual. La configuración de este sitio se puede encontrar en: /etc/apache2/sites-available/000-default.conf. No obstante, también es posible crear otros ficheros .conf que podemos activar y desactivar con los comandos:

  • a2ensite
  • a2dissite

Implementación de Hosting Virtual Basado en Nombres con Apache

Configuración del Servidor

  1. Configuramos el adaptador de red y aplicamos los cambios.
  2. Instalamos los paquetes de bind9.
  3. Configuramos el siguiente archivo según las indicaciones.
  4. Realizamos una copia de los archivos para no crear desde cero las zonas de asirbosco, 2asirbosco y, por último, la inversa.
  5. Accedemos al siguiente archivo y configuramos si son maestros o esclavos, así como la ubicación de las zonas.
  6. Procedemos a acceder al siguiente archivo y lo configuramos según las indicaciones, estableciendo, entre otros parámetros, las DNS.
  7. Realizamos una verificación para comprobar que los archivos modificados estén configurados correctamente; en caso contrario, se indicará el archivo y la línea donde se encuentra el fallo.
  8. Instalamos resolvconf.
  9. En el siguiente archivo, colocamos la IP del servidor y procedemos a comprobar que bind9 esté funcionando correctamente.
  10. Instalamos apache2.
  11. Creamos las carpetas para la página web y configuramos el index.html de cada una.
  12. Realizamos un sudo cp para copiar el archivo 000-default.conf y así no tener que crearlo desde cero.
  13. Lo configuramos según las siguientes indicaciones.
  14. Activamos iessjb.conf y comprobamos que apache2 funcione.

Configuración del Cliente

  1. Ahora, en el cliente, procedemos a configurar el adaptador de red e instalar resolvconf.
  2. Accedemos al siguiente archivo y colocamos la IP del servidor.

Evolución de Protocolos Web: HTTP/2

Características Clave de HTTP/2

  • HTTP/2 (Protocolo de Transferencia de Hipertexto, Versión 2).
  • La Versión 2 es compatible con el funcionamiento de las versiones 1.1 y 1.0.
  • Mantiene los mismos códigos de estado (1XX, 2XX, 3XX, 4XX, 5XX), métodos (GET, POST, PUT, HEAD, etc.) y la estructura de la cadena de llamada. Todos los conceptos básicos, tales como los métodos, códigos de estado, URI y campos de cabecera, se mantienen sin cambios.
  • Cabeceras en formato binario en lugar de formato texto.
  • Cabeceras comprimidas, lo que, junto a la compresión del formato binario, reduce la cantidad de información transmitida en cada petición.
  • Eliminación de información redundante: Otro cambio de gran relevancia en HTTP/2 es la eliminación de información redundante, cuyo objetivo es evitar el envío de datos repetidos durante una misma conexión. Así, se consigue un menor consumo de recursos y una menor latencia.
  • Multiplexación: Permite que varias peticiones puedan resolverse simultáneamente. Esto significa que el cliente solo necesita utilizar una conexión para cargar una página.
  • Con HTTP/1.X, cuando se solicitaba una página, primero se descargaba el HTML, y luego todos los archivos CSS, JS e imágenes enlazados por este. Estos archivos, a su vez, podían hacer referencia a otros y, como consecuencia, se descargaban en último lugar. Con la tecnología Server Push de HTTP/2, se pueden enviar todos los archivos necesarios para que la página se cargue desde el principio, sin tener que esperar a que el navegador interprete el HTML.

Comandos y Rutas de Archivos Relevantes

  • sudo nano /etc/netplan/00-installer-config.yaml
  • sudo nano /etc/html/web/index.html
  • Nota: Referencia a imagen de error (404.jpg)
  • sudo nano /etc/apache2/sites-available/000-default.conf
  • sudo nano /home/alumno/wiki/index.html
  • Enlace simbólico: sudo ln -s /home/alumno/blog /var/www/
  • ls -l /etc/apache2/mods-enabled
  • sudo a2enmod userdir
  • sudo nano /etc/apache2/mods-enabled/userdir.conf
  • Habilitación del módulo auth_basic: sudo a2enmod auth_basic
  • Establecimiento de contraseña en Apache: sudo htpasswd -c /etc/apache2/passwords_basic user1
  • Deshabilitar sitio por defecto: sudo a2dissite 000-default.conf
  • Habilitar sitio iessjb.conf: sudo a2ensite iessjb.conf
  • Configuración de zonas DNS: /etc/bind/named.conf.local
  • Configuración de cliente DNS: /etc/resolv.conf

Entradas relacionadas: