http o https?
Quando ci troviamo a navigare pagine web con connessione protetta - e per connessione protetta intendo tramite il protocollo https - ed alcune delle sue risorse (immagini, javascript, css, etc) non puntano ad un indirizzo sicuro, rischiamo di avere una fastidiosa notifica da parte del browser che ci obbliga a dare il consenso per mostrare i contenuti non sicuri.
Diamo un occhio all’html seguente per capire meglio di cosa stiamo parlando:
Finché navighiamo la pagina sopra in http non c’è nessun problema ma, se proviamo ad aprire la stessa pagina in https, un buon browser dovrebbe notificarci il rischio a cui andiamo incontro (sia il css, sia jquery puntano ad una connessione http e non https).
Per evitare il problema ci basta cambiare le url da http://.... ad https://..... nel caso la connessione corrente sia in https, e viceversa.
Ovviamente questo cambio deve essere automatico e, riempire il codice di html di if che cambiano il protocollo, non è la soluzione corretta!
Fortunatamente esiste un rimedio più semplice e pulito che consiste nella rimozione dall’url della parte relativa al tipo di protocollo; quindi dobbiamo rimuovere http: o https: e lasciare semplicemente il // come mostrato di seguito.
A questo punto sarà il browser a “switchare” in automatico dalla connessione http/https in base a quella corrente.
Questa tecnica prende il nome di “network-path reference” (maggiori info qui) e funziona anche per i css, come potete vedere sotto:
.mycssclass { background: url(//mysite.com/myimage.jpg); }
Inoltre questo approccio funziona egregiamente con tutti i browser, tranne che con Internet Explorer 7 e 8 dove, solo per i tag o @import, il download della risorsa avviene due volte (maggiori info qui).
Figo no?
The comments for this post are closed.
- There is no TrackBack for this post.
Archive