tag index equiv content code http url https

index - URL sin "http | https"



meta redirect html (2)

Acabo de enterarme por un colega que omitir la parte "http | https" de una URL en un enlace hará que dicha URL use el esquema en que se utilice la página en la que se encuentra.

Por ejemplo, si se accede a mi página en http://www.example.com y tengo un enlace (observe el ''//'' al frente):

<a href="//www.google.com">Google</a>

Ese enlace irá a http://www.google.com .

Pero si accedo a la página en https://www.example.com con el mismo enlace, irá a https://www.google.com

Quería buscar en línea más información sobre esto, pero tengo problemas para pensar en una buena frase de búsqueda. Si busco "URL sin HTTP", las páginas devueltas son acerca de las URL con este formulario: "www.example.com", que no es lo que estoy buscando.

¿Llamarías a eso una URL sin esquema? ¿Una URL sin protocolo?

Funciona esto en todos los navegadores? Lo probé en FF e IE 8 y funcionó en ambos. ¿Es esto parte de un estándar, o debería probar más navegadores?


Se llama referencia de ruta de red (la parte que falta se llama scheme o protocol ) definida en RFC3986 Sección 4.2

4.2 Referencia relativa

Una referencia relativa aprovecha la sintaxis jerárquica (Sección 1.2.3) para expresar una referencia de URI relativa al espacio de nombre de otro URI jerárquico.

relative-ref = relative-part [ "?" query ] [ "#" fragment ] relative-part = "//" authority path-abempty / path-absolute / path-noscheme / path-empty

El URI al que se hace referencia mediante una referencia relativa, también conocido como el URI objetivo, se obtiene aplicando el algoritmo de resolución de referencia de la Sección 5.

Una referencia relativa que comienza con dos caracteres de barra se denomina referencia de ruta de red (énfasis mío); tales referencias son raramente usadas. Una referencia relativa que comienza con un solo carácter de barra diagonal se denomina referencia de ruta absoluta. Una referencia relativa que no comienza con un carácter de barra diagonal se denomina referencia de ruta relativa.

Un segmento de ruta que contiene un carácter de dos puntos (por ejemplo, "this: that") no se puede usar como el primer segmento de una referencia de ruta relativa, ya que se confundiría con un nombre de esquema. Tal segmento debe estar precedido por un segmento de puntos (por ejemplo, "./this:that") para hacer una referencia de ruta relativa.