¿Cuál es la diferencia entre una URI y una URL? Todos utilizamos muchas URLs cada día. A veces las tecleamos, a veces simplemente vamos a una URL desde otra.
Empecemos por descifrar las siglas:
- URI: Uniform Resource Identifier (Identificador de Recursos Uniforme)
- URL: Uniform Resource Locator (Localizador de Recursos Uniforme)
- URN: Unifrorm Resource Name (Nombre de Recurso Uniforme)
La mayoría de la gente piensa en https://google.com o https://adictec.com como simples URLs, pero podemos referirnos a ellas como URIs. De hecho, un URI es un conjunto ampliado de URLs y algo llamado URN. Por lo tanto, podemos concluir con seguridad que todas las URLs son URIs. Sin embargo, lo contrario no es cierto.
¿Por qué todas las URLs son URIs?
Tu nombre, digamos “John Doe”, es un URN. El lugar donde vives, por ejemplo “Calle 13 de Montaña“, ya es una URL. Puedes ser identificado como una persona única con tu nombre o tu dirección. Esta identidad única ya es un URI. Y aunque tu nombre puede ser tu identidad única (URI), no puede ser una URL porque tu nombre no ayuda a encontrar tu ubicación. En otras palabras, los URIs (que son URNs) no son URLs.
De vuelta a Internet:
- URI – el nombre y la dirección de un recurso en la red, incluye la URL y el URN
- URL – La dirección de un recurso en la red, que define su ubicación y cómo llegar a él
- URN – nombre de un recurso en la red, define sólo el nombre del recurso, pero no indica cómo conectarse a él
Veamos algunos ejemplos:
- URI: https://adictec.com/wp-content/uploads/2022/01/URI-URL-y-URN.png
- URL: https://adictec.com
- URN: media/2022/01/URI-URL-y-URN.png
Como puede ver, las dos primeras URLs en yu navegador se muestran como enlaces y se puede hacer clic en ellas, pero la tercera no se puede hacer clic porque no está claro cómo y dónde.
Cómo se puede mostrar esto visualmente:
¿Qué es un URI?
URI son las siglas de Uniform Resource Identifier (Identificador de Recursos Uniforme) y es esencialmente una secuencia de caracteres que identifica un recurso. Puede contener una URL y un URN.
Un URI contiene las siguientes partes:
- esquema (scheme): muestra cómo se accede al recurso, normalmente mediante un protocolo de red (http, ftp, ldap)
- parte jerárquica (hier-part): datos necesarios para identificar el recurso (por ejemplo, la dirección del sitio web)
- consulta (query): datos opcionales adicionales del recurso (por ejemplo, una consulta de búsqueda)
- fragmento (fragment): Componente opcional para identificar un recurso secundario (por ejemplo, una ubicación en una página)
La sintaxis general de un URI es la siguiente:
URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ]
¿Qué es un URL?
Ahora que sabemos lo que es un URI, la URL también debería explicarse por sí misma. Recuerda siempre que un URI puede contener una URL, pero una URL sólo indica la dirección de un recurso.
Una URL contiene la siguiente información:
- El protocolo utilizado para acceder al recurso: http, https, ftp
- Ubicación del servidor utilizando la dirección IP o el nombre de dominio – por ejemplo, www.adictec.com es el nombre de dominio. https://192.168.1.17 – aquí el recurso se encuentra en la dirección IP especificada
- El número de puerto en el servidor. Por ejemplo http://localhost: 8080, donde 8080 es el puerto.
- La ubicación exacta en la estructura de directorios del servidor. Por ejemplo – https://adictec.com/contacto/ es la ubicación exacta si el usuario quiere ir a la sección de contacto del sitio.
- Un identificador de fragmento opcional. Por ejemplo, https://www.google.com/search?ei=qw3eqwe12e1w&q=URL donde q = URL es la cadena de consulta introducida por el usuario.
Sintaxis:
[protocol]://www.[domain_name]:[port 80]/[path or exaction resource location]?[query]#[fragment]
Entonces, ¿cómo se determina si algo es un URI o una URL?
Pues bien, si quieres saber si “algo” es un URI o una URL, siempre debes contarlo como un URI, porque todas las URL son URI.
Tabla de Comparación: URI VS URL
Hagamos una comparación de cara a carapara que todo lo que hemos discutido hasta ahora esté respaldado para que nunca te confundas con el mal uso de URIs y URLs.
URI | URL |
---|---|
Identificador de recursos | Identificador de ubicación |
Sintaxis: scheme:[//authority]path[?query][#fragment], donde authority = host[:port] | Sintaxis: ://www.:/?# |
El esquema puede ser cualquier cosa: protocolo, nombre o especificación, etc. | El esquema es siempre un protocolo, como http, https, ftp, LDAP, etc. |
El objetivo principal de un URI es identificar un recurso y distinguirlo de otros recursos mediante su ubicación o nombre. | El objetivo principal es obtener la dirección o ubicación del recurso. |
Ejemplo: contacto: +1 883-345-1111, urn:isbn:1234567890 | Ejemplo: https://adictec.com/diferencias-hosting-compartido-vps-dedicado-cloud/ |
Se utiliza en HTML, XML y bibliotecas de etiquetas como XSLT y jstl para identificar recursos y binarios. | La URL se utiliza sólo para buscar páginas web |
Pues bien, de ahora en adelante si quieres saber si ese “algo” es URI o URL o URN, debes marcarlo siempre como URI porque todas las URL y URN son URI.