2010-09-01 11 views
29

Tengo una página que hace referencia a un par de archivos javascript alojados externamente, a saber, jQuery on Google y YUI using YUI Loader.HTTPS y archivos alojados externos (CDN)?

El problema es que cuando accedo a la página a través de HTTPS, el navegador se queja de contenido mixto inseguro, ya que se está accediendo a los archivos javascript externos usando http en lugar de https.

¿Cuál es una buena forma de lidiar con esto, accediendo a los objetos externos jQuery y YUI Loader con HTTPS?

Respuesta

88

Suponiendo que el proveedor CDN tiene una versión https, puede usar URL relativas al protocolo.

Por ejemplo, en lugar de:

http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js 

... se puede utilizar:

//ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js 

El navegador utilizará el protocolo de la página para tratar de obtener el archivo. En páginas no seguras, http. En páginas seguras, https.

Google también hace que YUI Loader esté disponible a través de su CDN. Entonces, para YUI esto funciona bien:

//ajax.googleapis.com/ajax/libs/yui/2.8.0/build/yuiloader/yuiloader-min.js 

... en contextos tanto http como https.

+0

+1 para una característica poco usada URL. –

+1

Agradable, no se dio cuenta de que puede dejar el protocolo. le daré una oportunidad. – Parand

Cuestiones relacionadas