Saltar la navegación

Direcciones únicas

¿Qué es una URL?

Sólo nos queda un problema por resolver en el modelo cliente/servidor: ¿cómo podemos acceder a un servidor determinado si hay millones de ellos? Cada servidor en Internet tiene un identificador único, denominado dirección IP. Las direcciones IP clásicas son secuencias de 4 números entre 0 y 255 (unos valores mucho mayores en el caso del formato IPv6, el sustituto del formato IP).

De este modo, por ejemplo, la página del conocido buscador Google se encuentra en esta dirección: 209.85.148.104, por lo que poniendo ese valor en un navegador web podré acceder a esa página.

Resulta obvio que recordar esas direcciones no es sencillo. Por eso contamos con direcciones web que tienen más sentido para una persona, del tipo www.google.es. En Internet encontramos unos servidores de resolución de nombres de dominio, denominados DNS, que toman una dirección como la anterior y la convierten en el formato numérico de su IP. Es decir, asocian la dirección IP de un servidor al nombre que le corresponda para que nos resulte más sencillo poder acceder a esas páginas.

Por último, para terminar de componer la dirección, se la suele preceder de un identificador del protocolo, que para las páginas web es http o https (en el caso de páginas seguras). En el ejemplo anterior, la dirección completa quedaría así:

http://www.google.es

Y a esto es a lo que llamamos un identificador uniforme de recurso o URL (Uniform Resource Locator), ya que es una dirección que nos permite acceder de forma inequívoca a un determinado servidor.

Si observas las direcciones de Internet que introducimos en nuestro navegador, observarás que no siempre son tan sencillas. Normalmente aparecen varias barras y otros caracteres añadiendo parámetros a la dirección. Debemos pensar que en los modelos más sencillos de servidores, los contenidos se dividen en subcarpetas, que se identifican con el símbolo /, por lo que, cuando encontramos una dirección como la siguiente:

http://www.google.com/imghp

Estamos indicando que queremos acceder a la página de Google, pero a un contenido concreto. Esa dirección sigue siendo la URL de una página concreta.

En general, la URL es la dirección que nos permite especificar la dirección de Internet de un recurso específico, ya sea una página web, una imagen, un vídeo o incluso un sencillo comentario en un foro.

El formato general de un URL es:

esquema://máquina.directorio.archivo

También pueden añadirse otros datos:

esquema://usuario:contraseña@ máquina:puerto.directorio.archivo (quitando el espacio)

Por ejemplo: http://www.wikipedia.org/

La especificación detallada se encuentra en la RFC 1738, titulada Uniform Resource Locators.

Algunos ejemplos de esquemas URL:

Un HTTP URL combina en una dirección simple los cuatro elementos básicos de información necesarios para recuperar un recurso desde cualquier parte en Internet:

  • El protocolo que se usa para comunicar, o enviar datos.
  • El anfitrión (servidor o host) con el que se comunica.
  • El puerto de red en el servidor para conectarse.
  • La ruta al recurso en el servidor (por ejemplo, su nombre de archivo).

Un URL típico puede ser del tipo:

http://es.wikipedia.org:80/wiki/Special:Search?search=tren&go=Go

Donde:

  • http es el protocolo.
  • es.wikipedia.org es el anfitrión.
  • 80 es el número de puerto de red en el servidor (siendo 80 el valor por omisión para el protocolo HTTP, esta porción puede ser omitida por completo).
  • /wiki/Special:Search es la ruta de recurso.
  • ?search=tren&go=Go es la cadena de búsqueda (parte opcional).

Muchos navegadores web no requieren que el usuario ingrese "http://" para dirigirse a una página web, porque HTTP es el protocolo más común que se usa en navegadores web. Igualmente, dado que 80 es el puerto por omisión para HTTP, usualmente no se especifica. Normalmente, solamente se ingresa un URL parcial, por ejemplo: www.wikipedia.org/wiki/Train. Para ir a una página principal se introduce únicamente el nombre de anfitrión, como www.wikipedia.org.

El término URL también es usado por fuera del contexto de la WWW. Los servidores de bases de datos especifican URL como un parámetro para hacer conexiones. De forma similar, cualquier aplicación cliente-servidor que siga un protocolo particular puede especificar un formato URL como parte de su proceso de comunicación.

Ejemplo de un URL en una base de datos:

jdbc:datadirect:oracle://myserver:1521;sid=testdb