usar tipos rutas relativas relativa referencia pagina otra internos hacer enlaces enlace ejemplos desventajas como canonical absolutas html http https cdn relative-url

rutas - tipos de enlaces en html



¿Por qué usar URLs relativas al protocolo? (4)

A partir de diciembre de 2014, el blog de Paul Irish sobre las URL relativas al protocolo dice:

2014.12.17: Ahora que se recomienda SSL para todos y no tiene problemas de rendimiento, esta técnica ahora es un antipatrón. Si el activo que necesita está disponible en SSL, utilice siempre el activo https:// .

A menos que tenga problemas de rendimiento específicos (como la red móvil lenta mencionada en la respuesta de Zakjan), debe usar https:// para proteger a sus usuarios.

Ha sido una pregunta muy discutida en StackOverflow lo que esto significa:

<script src="//cdn.example.com/somewhere/something.js"></script>

Esto ofrece la ventaja de que si accede a través de HTTPS, obtendrá HTTPS automáticamente, en lugar de la advertencia "Elementos inseguros en esta página".

Pero, ¿por qué usar URLs relativas al protocolo? ¿Por qué no simplemente usar HTTPS siempre en las URL de CDN? Después de todo, una página HTTP no tiene motivos para quejarse si decide cargar algunas partes a través de HTTPS.

(Esto es más específicamente para las CDN; casi todas las CDN tienen capacidad de HTTPS. Considerando que, su propio servidor no necesariamente tiene HTTPS).


Debido al rendimiento. El establecimiento de una conexión HTTPS lleva mucho más tiempo que el HTTP, el protocolo de enlace TLS agrega un retraso de latencia de hasta 2 RTT . Puedes notarlo en redes móviles. Por lo tanto, es mejor no usar las URL de recursos HTTPS, si no las necesita.


Existen varias razones potenciales, aunque no todas son particularmente importantes:

  • ¿Qué tal la próxima vez que cada negocio con una agenda presente un nuevo protocolo? ¿Vamos a tener que cambiar miles de cadenas de nuevo entonces? No, gracias.
  • HTTPS es más lento que HTTP de la misma versión
  • Si alguna de las notas enumeradas en caniuse.com para HTTP / 2 es un problema
  • Conceptualmente, si el servidor hace cumplir el protocolo, no hay razón para ser específico al respecto en primer lugar. El agnosticismo es lo que es. Está cubriendo todas tus bases.