Un URL (localizador uniforme de recursos) es la dirección o ubicación de un recurso específico (como un sitio web, un documento, una imagen o un vídeo) en Internet. Define el protocolo que se va a utilizar para acceder al recurso (como HTTP o HTTPS), el nombre de dominio o la dirección IP del servidor donde se aloja el recurso y la ruta o el nombre de archivo específicos del recurso. Los URL se utilizan normalmente en los navegadores web para navegar a sitios web o acceder a contenido online.
Empezaremos por el protocolo web.
Para entender el protocolo web, vamos a utilizar un ejemplo. En este ejemplo, vamos a visitar www.apple.com en un navegador web como Chrome o Firefox. De hecho, seguiremos este ejemplo varias veces, cada vez con más niveles de detalle.
En el paso 1, la visita se inicia escribiendo www.apple.com en la barra de direcciones o haciendo clic en un enlace.
En el paso 2, el navegador construye un mensaje de solicitud y, a continuación, lo envía al servidor web de Apple. Pronto, explicaremos cómo es este mensaje y cómo se encuentra el servidor web de Apple.
En el paso 3, el servidor web de Apple, después de recibir la solicitud, construye el mensaje de respuesta y lo devuelve al navegador.
Por último, en el paso 4, el navegador representa la respuesta y ahora podemos ver la página web de Apple en el navegador.
Un punto crítico aquí es observar que el protocolo web consiste en un mensaje de solicitud seguido de un mensaje de respuesta. A menudo hablamos de "visitar" un sitio web, pero en realidad lo único que está sucediendo es que su navegador envía una solicitud al servidor web y el servidor web envía una respuesta.
El protocolo web, HTTP, es un protocolo de solicitud-respuesta que define cómo se comunican los clientes web con los servidores web. Un navegador web es un ejemplo de cliente web. También lo son las numerosas aplicaciones web móviles que probablemente tenga en su iPhone o dispositivo Android.
Una página web típica contiene de decenas a cientos de objetos, como:
- Hojas de estilo
- Bibliotecas de código
- Imágenes incrustadas
- Publicidad
Cada objeto se debe obtener a través de una solicitud y una respuesta. Por lo tanto, la obtención de una página implica de decenas a cientos de pares de mensajes de solicitud-respuesta. A lo largo de estas presentaciones, para simplificar, mostraré solo un par de mensajes de solicitud-respuesta.
El siguiente vídeo de esta serie tratará el tema del HTTPS, o protocolo web seguro.
Internet se describe a menudo como una red de redes en la que todas hablan el protocolo de Internet (IP). Miles de millones de sitios web viven en la World Wide Web (WWW), incluidas miles de redes comerciales en todo el mundo, como AT&T y Comcast.
Internet soporta numerosas aplicaciones. Entre los primeros se encontraban el correo electrónico, el Usenet, el protocolo de transferencia de archivos (FTP), el inicio de sesión remoto y Gopher. Luego vino la World Wide Web.
La WWW es un conjunto de aplicaciones que se comunican a través del protocolo web conocido como Protocolo de transferencia de hipertexto (HTTP). Existen navegadores web, aplicaciones web móviles y servidores web que se comunican a través de HTTP.
HTTP es un protocolo web que es una de las piedras fundamentales de cómo funciona Internet. Cuando visita un sitio web, HTTP se utiliza para entregar el contenido de esa página, mostrándolo en su navegador. El protocolo web, HTTP, es un protocolo de solicitud-respuesta que define cómo se comunican los clientes web con los servidores web.
Algo de historia sobre el HTTP
En 1989, Tim Berners-Lee, famoso por inventar HTML, trabajó en un proyecto en el CERN para utilizar hipertexto a fin de ofrecer diferentes tipos de contenido a través de Internet. El nombre del proyecto era "Mesh", pero posteriormente se actualizó a la famosa "World Wide Web". El HTTP fue diseñado para trabajar con los protocolos TCP/IP existentes para convertirse en la base de las comunicaciones de mensajería por Internet. El HTTP se ha convertido en el pilar de la mensajería de Internet entre clientes (por ejemplo, navegadores) y servidores.
El HTTP es una capa de aplicación que se define como un protocolo sin estado, un protocolo "cliente-servidor" o un protocolo de "solicitud-respuesta". En navegadores de Internet como Chrome y Safari, la dirección web lleva el prefijo http://. Este prefijo indica al navegador web que se comunique a través del protocolo HTTP, por ejemplo, http://website.com/. Este inicio de una conexión HTTP y a través del protocolo impulsa la entrega de tipos de contenido web al usuario a través de un ordenador u otro dispositivo conectado a Internet.
Pasos de un flujo de solicitud-respuesta HTTP
El flujo de solicitud-respuesta del protocolo HTTP es el lugar donde continúa nuestra historia. Cuando un usuario o una aplicación navega a un sitio web, por ejemplo, www.apple.com, vemos casi instantáneamente una imagen en el navegador o la aplicación que muestra el contenido esperado del sitio web. Sin embargo, bajo la superficie, a menudo se hacen cientos de solicitudes y se devuelven las respuestas.
Un navegador web es un ejemplo de cliente web, pero también lo son las aplicaciones web móviles que probablemente tenga en su dispositivo iPhone o Android. Sin embargo, para mostrar cómo se realizan estas solicitudes y respuestas en el back-end cuando alguien navega a un sitio web, el proceso se puede dividir en cuatro pasos:
Paso 1: Navegación e iniciación
El usuario escribe una dirección web en un navegador o hace clic en un enlace de un correo electrónico u otra comunicación. La URL también contiene el dominio. El navegador busca la dirección web con una búsqueda de DNS y, a continuación, envía la solicitud a esta dirección.
Paso 2: El cliente envía un mensaje de solicitud HTTP al servidor
El cliente HTTP, por ejemplo, el navegador, construye un mensaje de solicitud que se dirige al servidor web de Apple. La primera línea del mensaje de solicitud de HTTP identifica la página raíz del sitio web, por ejemplo, get /.
Esta línea indica la versión de HTTP, por ejemplo, la versión HTTP 1.1 o HTTP 1.0. Después de esta línea inicial, otra serie denominada "encabezados de solicitud" proporciona información adicional sobre la solicitud e información sobre la entidad solicitante, por ejemplo, el navegador.
Una vez que el mensaje de solicitud se envía al servidor web, se puede leer y crear una respuesta.
Paso 3: El servidor web de Apple envía la respuesta HTTP de vuelta al cliente
Una vez que el servidor web de Apple recibe una solicitud, se crea un mensaje de respuesta y se devuelve al navegador (cliente). La primera línea del mensaje incluye el código de respuesta "200 OK" para indicar que el servidor web podría responder a la solicitud correctamente.
Otros códigos de respuesta incluyen:
- 404 — No encontrado
- 502 — Puerta de enlace no válida
- 503 — Servicios no disponibles
El formato exacto del mensaje de solicitud se repite en el mensaje de respuesta HTTP con una serie de líneas llamadas "encabezados de respuesta", que proporcionan información sobre la respuesta. Después de los encabezados de respuesta aparece una línea en blanco seguida de la página web real, en forma de documento presentado mediante el lenguaje de marcado de hipertexto HTML.
Una vez generado el mensaje de respuesta HTTP, el servidor web envía el mensaje de vuelta al navegador y el navegador recibe y lee la respuesta.
Paso 4: Mensaje representado por el explorador
El paso final es que el navegador representa el mensaje de respuesta y muestra la página web de Apple en el navegador.
Los componentes de una página web típica
El ejemplo anterior de una solicitud-respuesta de cliente-servidor es una versión simplificada de lo que sucede en la realidad. Una página web típica contendrá muchas decenas o cientos de objetos, como:
- Hojas de estilo
- Bibliotecas de código
- Imágenes incrustadas
- Publicidad
Cada objeto se recupera a través de una solicitud y una respuesta, como en los pasos 2–4 anteriores. Por lo tanto, la obtención del contenido que comprende una página web requiere que se procesen decenas o cientos de pares de mensajes solicitud-respuesta.
Preguntas frecuentes
El HTTP, o Protocolo de transferencia de hipertexto, es un protocolo que se utiliza para recuperar recursos como archivos HTML. El HTTP proporciona un estándar de mensajería para facilitar los intercambios de comunicación entre clientes web (por ejemplo, un navegador) y servidores web.
El protocolo web seguro, o HTTPS, tiene una S al final de HTTP para mostrar que es una instancia segura de un sitio web. El HTTPS proporciona autenticación del sitio web, así como cifrado de los datos intercambiados entre un servidor web y un cliente web. HTTPS utiliza certificados digitales emitidos mediante TLS (Transport Layer Security, Seguridad en la capa de transporte) o SSL (Secure Sockets Layer, Capa de sockets seguros).
Un dominio web, también conocido como nombre de dominio, es una dirección única y entendible que representa un sitio web específico en Internet. Forma parte de un URL y normalmente consta de dos componentes principales: el dominio de nivel superior (TLD) y el dominio de segundo nivel (SLD).
El dominio de nivel superior se refiere a la última parte del nombre de dominio, como .com, .org, .net, .gov, .edu, etc. Significa el tipo o propósito del sitio web (por ejemplo, comercial, organización, red, gobierno, educación).
Por qué los clientes eligen Akamai
Akamai potencia y protege la vida online. Las empresas líderes de todo el mundo eligen Akamai para crear, proteger y ofrecer sus experiencias digitales, ayudando así a millones de personas a vivir, trabajar y jugar cada día. Akamai Connected Cloud, plataforma de nube distribuida de forma masiva en el Edge, acerca las aplicaciones y las experiencias a los usuarios y mantiene las amenazas más alejadas.