<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
Du jour au lendemain, le client exprime le besoin que son site soit sécurité en utilisant un certificat SSL. Du coup, tous les liens absolus pointant vers le CDN sont à corriger.
Autrement, Chrome pourrait se plaindre que la page sécurisée tente d'utiliser du contenu qui ne l'est pas.
Message provenant de Developer Tools (l'équivalent de Firebug intégré à Chrome) :
[blocked] The page at https://code18.blogspot.com/test.php ran insecure content from http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js.
Parce que les clients ont tendance à paniquer lorsqu'ils voient des avertissements qui pourraient faire fuir leurs visiteurs, nous n'avons pas le choix d'effectuer la correction. Le développeur averti préférera prévenir ce genre de révision sur d'anciens projets qui lui fait perdre du temps précieux à chercher sur des torrents les derniers épisodes de The Big Bang Theory. C'est pourquoi il préférera omettre le protocole dans l'URL de la source :
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
Ainsi, si la page est demandée en HTTP, le script sera automatiquement ajusté pour prendre la ressource externe dans ce même protocole. À l'inverse, s'il y a un certificat SSL, la ressource externe sera chargée en HTTPS.


C'est compatible avec tous les navigateurs ? Je pense à IE6/7 notamment !
RépondreEffacerSelon le RFC, c'est supposé être compatible, à moins que le navigateur ne l'ait pas implémenté. Voir RFC 3986, section 4.2.
RépondreEffacerQuelqu'un sur StackOverflow a même confirmé que c'était compatible sur IE3 !
Hi !
RépondreEffacerCa ne marche pas avec Firefox 13.0.1 sous Ubuntu 12.04..