Integrità HTTPS

Mixed Content

Nome Card UX: Mixed Content

La card Mixed Content rileva la presenza di risorse non sicure (caricate via HTTP) all'interno di una pagina servita via HTTPS. Il problema nasce perché HTTPS protegge il canale di comunicazione tra browser e server, ma se la pagina carica immagini, script o CSS da fonti HTTP, quella protezione diventa parziale. I browser moderni bloccano silenziosamente certi tipi di mixed content attivo (script e CSS) e avvertono l'utente per quello passivo (immagini). Oltre al problema di sicurezza, la presenza di mixed content può attivare avvisi che riducono la fiducia degli utenti verso il sito.

Cosa analizza la card

Identifica risorse (immagini, script, CSS, iframe, font) caricate via HTTP in una pagina HTTPS. Distingue tra mixed content attivo (blocco immediato del browser, impatto maggiore) e passivo (avviso al browser). Mostra le URL problematiche per permettere la correzione diretta.

A cosa serve

Serve in particolare dopo migrazioni da HTTP a HTTPS, dove frequentemente le risorse embedded (immagini nei post, video, widget) mantengono URL con HTTP anche dopo il passaggio al protocollo sicuro.

L'Analogia: La porta blindata con una finestra aperta accanto

Hai installato una porta blindata all'ingresso di casa per dormire tranquillo. Ma accanto alla porta c'è una finestra che hai lasciato aperta. Chiunque voglia entrare non passerà dalla porta blindata ma dalla finestra. Il mixed content funziona esattamente così: HTTPS protegge il canale principale, ma ogni risorsa caricata via HTTP è una finestra aperta attraverso cui i dati possono essere intercettati.

Esempio di vita reale

Un blog WordPress migra da HTTP a HTTPS. Il sito principale è su HTTPS ma decine di immagini nei vecchi articoli hanno ancora URL con http://. La card individua le risorse con URL non aggiornato. Con un plugin che effettua la sostituzione massiva degli URL nel database, o con un'opportuna regola nel file .htaccess, le risorse vengono servite in HTTPS e la card torna a posto.

Domande frequenti su questa card

Non c'è una penalizzazione diretta confermata, ma il mixed content erode il vantaggio del passaggio a HTTPS. Google usa HTTPS come segnale di ranking (sia pur lieve): avere mixed content riduce l'efficacia di quel segnale. Soprattutto per siti e-commerce o che gestiscono dati sensibili, il mixed content è un rischio di sicurezza da eliminare indipendentemente dalle implicazioni SEO.

Il mixed content passivo (immagini, video, audio) viene per ora caricato dal browser ma con un avviso nella console. Il mixed content attivo (script JavaScript, CSS) viene invece bloccato completamente. Questo spiega perché visivamente le immagini appaiono ma nella console del browser ci sono warning. Nel tempo i browser stanno diventando sempre più restrittivi anche con il passivo.

Ci sono tre approcci: plugin come Really Simple SSL che gestisce la sostituzione automatica degli URL, query SQL diretta nel database per aggiornare gli URL delle immagini nei post, oppure regola nel file .htaccess che forza il reindirizzamento di tutte le risorse HTTP a HTTPS. La soluzione con query SQL è la più definitiva perché aggiorna i dati alla fonte.

La Gerarchia dei Pericoli

Contenuto Passivo

Immagini caricate in HTTP. Causano il "lucchetto giallo" e tolgono professionalità al sito, scoraggiando gli utenti più attenti.

Contenuto Attivo

Script e CSS in HTTP. Sono pericolosissimi: il browser li blocca quasi sempre per proteggere l'utente da possibili attacchi hacker dirottati.

Come risolvere gli errori

Se la tua card è rossa, significa che hai degli elementi che iniziano con http://. Devi modificarli manualmente nel codice o nel database aggiungendo una semplice "s": https://. Spesso la colpa è di un vecchio plugin rimosso male o di un'immagine caricata anni fa che punta ancora al vecchio protocollo.