Hosting y dominio: pilares fundamentales de un sitio web

Para crear tu propio sitio web, necesitarás un dominio, hosting y cursos de programación. Te explicamos de manera sencilla un proceso complejo.
Todos los días navegamos por decenas de sitios web: trabajamos, leemos noticias, vemos videos y escuchamos música. Estas acciones están tan automatizadas que no necesitamos entender dónde se encuentran los sitios web y por qué al ingresar a la dirección app.codica.la se abre el sitio web de Códica y no un servicio de música o un portal de noticias sobre gatos.

En esta guía, vamos a analizar:
  • Cómo surgieron los dominios
  • Quiénes son los proveedores de hosting y dónde se encuentra el sitio web en Internet
  • Qué tipos de hosting se utilizan
Nombre de dominio (dominio)
Incluso antes de la aparición de Internet moderno, se utilizaban direcciones numéricas para transmitir información entre computadoras. Ahora se llaman direcciones IP, abreviatura de Internet Protocol address. Para transmitir información, era necesario conocer esta dirección, por ejemplo, 10.210.107.23. Es similar a un número de teléfono y fue una solución conveniente. Pero la cantidad de computadoras estaba creciendo y era casi imposible recordar todas las direcciones.

La primera solución fue un archivo especial llamado hosts. Se encontraba en cada computadora de la red y permitía asignar nombres a las computadoras. La dirección de la computadora y su nombre se vinculaban, lo que significa que la información se podía transmitir por nombre, por ejemplo, Alex-PC en lugar de 10.210.107.23. Este archivo todavía existe y a menudo es utilizado por los programadores durante el desarrollo. El formato del archivo es el siguiente:

# Formato del archivo: <dirección IP> <nombre de la computadora>
34.117.253.138 codica.la
10.210.107.23 Alex-PC
Con el tiempo, este método se volvió incómodo: era necesario actualizar el archivo manualmente o descargarlo desde una computadora que tuviera una lista actualizada de direcciones. Se necesitaba un método automatizado para vincular direcciones y nombres. Para resolver estos problemas, se creó el Sistema de Nombres de Dominio (DNS, por sus siglas en inglés). Este sistema aprendió a vincular automáticamente direcciones con nombres, aliviando a los usuarios de las computadoras de este dolor de cabeza.
El DNS se utiliza hasta el día de hoy, permitiendo vincular el nombre de un sitio web, que se llama dominio, con la dirección IP de la computadora en la que se encuentra el sitio. En otras palabras, cualquier servicio puede consultar al DNS y preguntar "¿cuál es la dirección IP del dominio codica.la?".
Cómo encuentra una computadora una dirección

Cuando se realiza una solicitud a una dirección, como codica.la, primero se verifica el archivo hosts, y si se encuentra el dominio, el navegador establece una conexión con el servidor. En nuestro ejemplo, irá a la dirección 34.117.253.138.

# Ejemplo de consulta al DNS utilizando la herramienta host
host codica.la
codica.la has address 34.117.253.138
codica.la mail is handled by 10 alt4.aspmx.l.google.com.
codica.la mail is handled by 1 aspmx.l.google.com.
codica.la mail is handled by 10 alt3.aspmx.l.google.com.
codica.la mail is handled by 5 alt1.aspmx.l.google.com.
codica.la mail is handled by 5 alt2.aspmx.l.google.com.
Si no se encuentra esa dirección en el archivo hosts, se enviará una solicitud al servicio DNS, que devolverá la dirección IP de la computadora con el sitio web como respuesta.

Es importante entender que el DNS es un servicio, no un servidor específico. Dado que todo Internet depende del funcionamiento estable de este sistema, incluye múltiples servidores en todo el mundo. Además, el DNS está diseñado de tal manera que no hay una organización central que controle estos servidores. Para obtener más información sobre el DNS, consulta nuestra guía aquí.
Hosting
Internet es una red global que conecta una gran cantidad de dispositivos. Estos dispositivos incluyen no solo computadoras de escritorio y portátiles, sino también dispositivos móviles, cámaras y varios dispositivos electrónicos y domésticos. Aunque estos dispositivos son completamente diferentes, pueden comunicarse entre sí sin problemas utilizando un lenguaje común. Ese lenguaje en el mundo de las máquinas se llama pila de protocolos TCP/IP. Sin entrar en detalles, diremos que un protocolo es un conjunto de reglas que rigen la comunicación. La naturaleza de los dispositivos que se comunican no importa.

El elemento principal de TCP/IP es la dirección IP. En la versión IPv4, se ve así: 10.123.23.1. Cuatro números separados por puntos. Para todos los dispositivos conectados a la red directamente, esta dirección es única. De hecho, cualquier solicitud en Internet siempre se dirige a una dirección IP, incluso si no la ves.

Entre las computadoras conectadas a Internet, hay un grupo de máquinas que actúan como servidores. Estos servidores generalmente se encuentran en los proveedores de hosting y son los encargados de atender a los numerosos sitios web.
Un proveedor de hosting es una empresa que ofrece un servicio llamado hosting, que proporciona recursos para alojar y servir un sitio web en Internet. El hosting puede variar desde un entorno completamente preparado en el que se carga el código del sitio web, hasta servidores físicos que se pueden administrar de forma independiente.

Por lo general, el proceso funciona de la siguiente manera: después de registrarte en el sitio web del proveedor de hosting, seleccionas un plan, vinculas una tarjeta de crédito y se te cobrará una tarifa mensual por el servicio y los servicios adicionales. A cambio, obtienes acceso a tus recursos, como una dirección IP y un par de credenciales de inicio de sesión (SSH o FTP) para acceder a ellos.

Sin embargo, también existen servicios de hosting gratuitos que solo requieren conocimientos básicos de desarrollo web. Para publicar tu página en Internet, puede ser suficiente utilizar servicios gratuitos como Github Pages y una página HTML. También puedes obtener un dominio de tercer nivel o vincular tu propio dominio. Esto se explica en más detalle en nuestras profesiones en la lección Publicación en Internet.
Tipos de hosting: On-Prem, IaaS, PaaS, SaaS

Puedes utilizar una computadora antigua como tu propio hosting, pero tendrás que asegurarte de que esté disponible en Internet de forma constante, protegida contra ataques y actualizada con el software. Esta solución se llama On-Premises. En lugar de hacerlo tú mismo, puedes utilizar soluciones "como servicio":
  • IaaS: Infrastructure as a Service, infraestructura como servicio.
  • PaaS: Platform as a Service, plataforma como servicio.
  • SaaS: Software as a Service, software como servicio.
Cada término implica un nivel de responsabilidad diferente. En el caso de Github Pages, solo necesitas escribir HTML y cargarlo en el servicio, el resto se resuelve a través de la interfaz (panel de control) y toda la "magia" ocurre en el lado del servicio. Esta solución es SaaS.

Una de las soluciones PaaS populares es Heroku, que ofrece una variedad de herramientas gratuitas y convenientes. Los estudiantes adquieren habilidades prácticas en el trabajo con Heroku durante el cuarto proyecto en nuestras profesiones.

Entre las soluciones IaaS populares se encuentra Amazon Web Services. Es interesante destacar que Heroku utiliza AWS para alojar tus recursos, lo que significa que actúa como intermediario y simplifica muchos procedimientos de administración de servidores.

Una forma popular de visualizar estas soluciones es a través del ejemplo de hacer una pizza, donde On-Premises requiere tener ingredientes y herramientas, mientras que SaaS se representa como una pizzería a la que vas a comer pizza:
Conclusión
Entonces, para crear tu propio sitio web, necesitarás un dominio, hosting y cursos de programación. Las organizaciones llamadas registradores se encargan de emitir dominios. En su sitio web, puedes encontrar un dominio disponible y pagarlo. Después de eso, debes renovarlo cada año, de lo contrario, volverá a estar disponible y otras personas podrán comprarlo. Luego, en el mismo sitio web del registrador, puedes configurar el DNS, por ejemplo, especificar la dirección de tu hosting (en realidad, es un poco más complicado, primero debes especificar los servidores de nombres). Después de aproximadamente un día, tu sitio web comenzará a abrirse. Este tiempo se debe a que la información sobre la nueva combinación de dominio-dirección debe propagarse a todos los servidores DNS en todo el mundo. Lo mismo ocurre cuando se cambia la dirección IP. El proceso puede llevar hasta un día.

El hosting puede ser simple y gratuito, o puede ser de pago y requerir conocimientos y habilidades especiales de administración. Puedes comenzar alojando tu sitio en un hosting gratuito con un dominio gratuito. Pero no debes confundir a los registradores de dominios con los proveedores de hosting. A menudo, los proveedores de hosting actúan como intermediarios y ofrecen comprar dominios a través de ellos, pero en general, los registradores son compañías separadas que no están relacionadas con el hosting.

Y puedes adquirir todas las habilidades necesarias de programación y trabajo con aplicaciones web con nuestros mentores en una de nuestras profesiones.
Leer otros artículos de Guías
Lea otros artículos relevantes del mundo de la tecnología y el espíritu empresarial.