Risolvere il Mixed Content in WordPress: Forzare Correttamente l'HTTPS
Avete attivato un certificato SSL, ma il browser mostra ancora il vostro sito WordPress come "Non sicuro"? Oppure l'icona del lucchetto non appare correttamente? In tal caso, la causa è spesso il cosiddetto Mixed Content (contenuto misto).
Mixed Content significa che: sebbene il sito web stesso venga caricato tramite https://, singoli elementi della pagina vengono ancora integrati tramite indirizzi http:// non sicuri. Può trattarsi di immagini, file CSS, file JavaScript, font, video, iframe o risorse esterne.
Perché il Mixed Content è problematico
L'HTTPS protegge la connessione tra il visitatore e il sito web. Tuttavia, se singoli elementi continuano a essere caricati via HTTP, la pagina non è completamente crittografata. Ciò può compromettere la sicurezza, la fiducia, la SEO e l'esperienza utente.
Il Mixed Content può comportare le seguenti conseguenze:
- Il browser mostra "Non sicuro" o messaggi di avviso,
- L'icona del lucchetto non appare correttamente,
- Immagini o script vengono bloccati,
- Il layout può apparire danneggiato o errato,
- I moduli (form) sembrano non sicuri,
- I visitatori perdono fiducia,
- Il tracciamento o le funzioni esterne non funzionano correttamente,
- La qualità tecnica della SEO ne risente.
Il Mixed Content dovrebbe essere risolto sistematicamente, in particolare nei moduli di contatto, nelle pagine di login, nelle aree clienti e nei negozi WooCommerce.
Cause tipiche del Mixed Content
Il Mixed Content si verifica spesso dopo il passaggio di un sito web esistente da HTTP a HTTPS. I vecchi link rimangono salvati nel database, nel tema, nei widget o nei page builder.
Cause frequenti:
- Le immagini venivano precedentemente inserite con
http://, - I link interni contengono ancora indirizzi HTTP,
- Le opzioni del tema salvano vecchi URL,
- I page builder salvano i percorsi nelle proprie strutture dati,
- I file CSS contengono percorsi HTTP assoluti,
- I file JavaScript vengono caricati esternamente tramite HTTP,
- Google Fonts o altri font esterni sono integrati in modo non sicuro,
- I widget contengono link HTTP hardcoded (scritti direttamente nel codice),
- Vecchi shortcode o blocchi HTML contengono indirizzi HTTP,
- I file di cache contengono ancora vecchi percorsi.
Mixed Content attivo e passivo
Non tutti gli errori di Mixed Content sono ugualmente critici. Fondamentalmente si distingue tra contenuti passivi e attivi.
| Tipo | Esempi | Rischio |
|---|---|---|
| Mixed Content Passivo | Immagini, video, file audio | Può attivare avvisi e compromettere la fiducia. |
| Mixed Content Attivo | JavaScript, CSS, iframe, script esterni | Più critico, poiché le funzioni e la sicurezza possono essere colpite direttamente. |
I browser moderni spesso bloccano automaticamente i contenuti non sicuri di tipo attivo. Di conseguenza, un sito web può apparire improvvisamente difettoso o determinate funzioni potrebbero smettere di funzionare.
1. Verificare se l'SSL è correttamente attivo
Prima di correggere il Mixed Content, il certificato SSL stesso deve funzionare correttamente. Visitate il vostro sito web con https://:
https://www.iltuodominio.ch
Verificate:
- Il sito web si carica generalmente tramite HTTPS?
- Il certificato è valido?
- L'HTTPS funziona con e senza
www? - L'HTTP viene reindirizzato automaticamente a HTTPS?
- Il browser mostra un avviso specifico sul certificato o sul Mixed Content?
Se il certificato stesso presenta errori, è necessario verificare prima la configurazione dell'SSL e del dominio. La risoluzione del Mixed Content è solo il passo successivo.
2. Impostare l'indirizzo di WordPress su HTTPS
Verificate gli URL del sito in WordPress:
Impostazioni > Generale
Lì, entrambi i campi dovrebbero iniziare con https://:
- Indirizzo WordPress (URL)
- Indirizzo sito (URL)
Esempio:
https://www.iltuodominio.ch
3. Trovare il Mixed Content nel browser
Il modo più rapido per la ricerca degli errori è la console degli strumenti per sviluppatori del vostro browser.
Come procedere:
- Aprite la pagina interessata nel browser.
- Premete
F12oppure fate clic con il tasto destro del mouse e selezionate Ispeziona. - Aprite la scheda Console.
- Cercate i messaggi che contengono Mixed Content.
- Prendete nota degli indirizzi HTTP interessati.
Messaggio tipico:
Mixed Content: The page at 'https://www.iltuodominio.ch/' was loaded over HTTPS, but requested an insecure image 'http://www.iltuodominio.ch/wp-content/uploads/immagine.jpg'.
Questo messaggio di solito mostra direttamente quale file viene ancora caricato in modo non sicuro.
4. Verificare il Mixed Content con strumenti online
Oltre alla console del browser, possono essere d'aiuto strumenti di verifica esterni. Questi scansionano un URL e mostrano i contenuti non sicuri. Tali strumenti sono particolarmente utili se desiderate controllare più pagine.
Tuttavia, fate attenzione: uno strumento di solito verifica solo l'URL specificato. Se il Mixed Content è presente solo su sottopagine, articoli del blog, pagine prodotto o landing page, queste dovranno essere verificate separatamente.
5. Soluzione semplice: Utilizzare un plugin SSL
Per molti siti WordPress, un plugin SSL è la soluzione più semplice. Plugin come Really Simple SSL sono in grado di rilevare i tipici problemi HTTPS, impostare i reindirizzamenti e correggere parzialmente il Mixed Content in modo automatico.
Procedura tipica:
- Installate un plugin SSL idoneo.
- Attivate la configurazione SSL.
- Verificate i suggerimenti del plugin.
- Svuotate la cache.
- Testate nuovamente il sito web nel browser.
Questo metodo è particolarmente comodo per i principianti. Lo svantaggio: alcune correzioni avvengono dinamicamente a runtime e non sempre risolvono la causa originaria nel database.
6. Soluzione pulita: Sostituire gli URL HTTP nel database
Se il vostro sito web funzionava precedentemente in HTTP, i vecchi URL potrebbero essere memorizzati nel database. Una soluzione pulita consiste nel sostituire gli URL interni da http:// a https://.
Plugin adatti a questo scopo sono, ad esempio:
- Better Search Replace,
- Search & Replace Everything,
- WP-CLI search-replace per utenti avanzati.
Esempio:
| Cerca | Sostituisci con |
|---|---|
http://www.iltuodominio.ch |
https://www.iltuodominio.ch |
http://iltuodominio.ch |
https://www.iltuodominio.ch |
7. Utilizzare Better Search Replace in modo sicuro
Come procedere con cautela con Better Search Replace:
- Create un backup completo dei file e del database.
- Installate il plugin Better Search Replace.
- Andate su Strumenti > Better Search Replace.
- Inserite il vostro vecchio indirizzo HTTP in Cerca.
- Inserite il nuovo indirizzo HTTPS in Sostituisci con.
- Selezionate le tabelle pertinenti.
- Attivate prima l'opzione Eseguire come prova?.
- Verificate il numero di corrispondenze trovate.
- Se tutto appare corretto, eseguite la sostituzione senza l'opzione di prova.
- Successivamente svuotate la cache e verificate il sito web.
Utilizzate specifiche di dominio il più complete possibile. Non sostituite alla cieca ogni http:// con https://, poiché potrebbero essere coinvolti URL esterni che potrebbero non essere accessibili in HTTPS.
8. Verificare i Page Builder e le Opzioni del Tema
Page builder come Elementor, Divi, WPBakery o altri sistemi di layout memorizzano spesso gli URL nei propri campi dati, file CSS o strutture di cache. Pertanto, il Mixed Content può persistere nonostante la sostituzione nel database.
Nei page builder verificate:
- Opzioni globali del tema,
- Modelli di intestazione (header) e piè di pagina (footer),
- Immagini di sfondo,
- CSS personalizzato,
- Template,
- Popup builder,
- Elementi salvati nella libreria,
- File CSS rigenerati.
Con Elementor, spesso è utile:
- Elementor > Strumenti > Rigenera file e dati,
- Svuotare la cache di Elementor,
- Svuotare la cache del sito web,
- Svuotare la cache del browser.
9. Controllare i File del Tema e i Widget
Alcuni link HTTP non si trovano nel database, ma direttamente nei file del tema, nei widget o nel codice personalizzato. Ciò riguarda in particolare i siti web più vecchi o i temi personalizzati su misura.
Punti possibili:
header.php,footer.php,functions.php,- Widget HTML personalizzati,
- Opzioni del tema,
- Campi del Customizer,
- Campi del copyright del footer,
- Campi del codice di tracciamento,
- Font o script incorporati.
I link HTTP hardcoded devono essere corretti manualmente. Se possibile, utilizzate un tema child (child theme) affinché le modifiche non vadano perse con gli aggiornamenti del tema.
10. Verificare le risorse esterne
Non tutti gli errori di Mixed Content provengono dal vostro dominio. A volte i file esterni vengono integrati in modo non sicuro.
Esempi:
- Immagini esterne,
- Vecchi script di tracciamento,
- Font,
- iframe,
- Video,
- Widget delle recensioni,
- Widget di chat,
- Vecchi indirizzi CDN.
Se un servizio esterno non supporta l'HTTPS, non dovreste più integrarlo tramite HTTP. Cercate un'alternativa compatibile con HTTPS o rimuovete l'integrazione.
11. Reindirizzare HTTP a HTTPS
Oltre alla correzione dei contenuti, l'HTTP dovrebbe essere reindirizzato permanentemente a HTTPS. Ciò impedisce a visitatori o motori di ricerca di utilizzare vecchi indirizzi HTTP.
A seconda della configurazione, un reindirizzamento può avvenire tramite:
- cPanel,
.htaccess,- Plugin di WordPress,
- Configurazione del server,
- CDN o Proxy, se utilizzati.
È importante che il reindirizzamento sia pulito e univoco. Evitate catene di reindirizzamento come HTTP senza www → HTTPS senza www → HTTPS con www, se è possibile un reindirizzamento diretto.
12. Svuotare completamente la cache
Dopo aver corretto il Mixed Content, tutte le cache dovrebbero essere svuotate. Altrimenti, potrebbero continuare a essere distribuiti vecchi riferimenti HTTP.
Svuotate:
- Cache di WordPress,
- Plugin di caching,
- Cache del page builder,
- Cache del tema,
- Cache del server, se presente,
- Cache del CDN, se utilizzato,
- Cache del browser.
Successivamente, testate il sito web in una finestra del browser in incognito o su un altro dispositivo.
13. Verificare WooCommerce con particolare attenzione
Nei negozi WooCommerce l'HTTPS è particolarmente importante. Carrello, checkout, account cliente e processi di pagamento devono essere completamente crittografati.
Dopo il passaggio a HTTPS, verificate:
- Pagine prodotto,
- Carrello,
- Checkout,
- Account cliente,
- Fornitori di servizi di pagamento,
- Conferma d'ordine,
- Link nelle e-mail,
- Webhook,
- Script di tracciamento e conversione.
Effettuate sempre un ordine di prova in un negozio e-commerce.
14. Aggiornare la Google Search Console e la Sitemap
Dopo il passaggio a HTTPS, dovreste verificare se la vostra sitemap contiene URL HTTPS. I plugin SEO generano normalmente le sitemap in modo automatico con l'indirizzo attuale del sito web.
Verificate:
- La sitemap contiene solo URL HTTPS?
- La sitemap è stata aggiornata nella Google Search Console?
- Ci sono errori 404 o problemi di reindirizzamento?
- I vecchi URL HTTP vengono reindirizzati correttamente?
- Gli URL canonical sono impostati su HTTPS?
Una struttura HTTPS pulita aiuta i motori di ricerca a indicizzare gli URL corretti.
15. Errori comuni nella risoluzione del Mixed Content
- Attivare solo un certificato SSL: I vecchi link HTTP rimangono comunque.
- Nessun backup del database: Le sostituzioni errate sono difficili da annullare.
- Sostituzione cieca di
http://: Gli URL esterni possono subire danni. - Non svuotare la cache: Continueranno a essere mostrati i vecchi contenuti.
- Dimenticare il page builder: I file CSS e i template conterranno ancora percorsi HTTP.
- Controllare solo la pagina iniziale (home page): Il Mixed Content può verificarsi nelle sottopagine.
- Non testare WooCommerce: I problemi al checkout rimangono non rilevati.
- Nessun reindirizzamento 301: La versione HTTP rimane raggiungibile.
SEO e Fiducia
L'HTTPS è oggi lo standard per i siti web professionali. Il Mixed Content può danneggiare la fiducia, specialmente quando i browser mostrano avvisi. I visitatori si aspettano che moduli, login e negozi e-commerce funzionino in modo sicuro.
Un passaggio pulito a HTTPS aiuta per:
- La fiducia dei visitatori,
- La qualità tecnica della SEO,
- La corretta indicizzazione,
- La trasmissione sicura dei moduli,
- Un'immagine esterna professionale,
- Funzioni di tracciamento e di e-commerce stabili.
GEO: URL sicuri e coerenti
La GEO, ovvero la Generative Engine Optimization (ottimizzazione per i motori generativi), trae vantaggio da strutture di siti web chiare, stabili e affidabili. Se i contenuti sono raggiungibili tramite indirizzi HTTP e HTTPS differenti, o se le risorse non sicure vengono bloccate, ciò può compromettere la comprensibilità tecnica.
Strutture HTTPS pulite aiutano attraverso:
- URL uniformi,
- Meno pagine di errore,
- Link interni corretti,
- Contenuti che si caricano completamente,
- Segnali tecnici affidabili,
- Migliore accessibilità delle risorse importanti.
Procedura consigliata
- Verificare l'SSL: Il certificato deve essere valido e correttamente attivo.
- Verificare gli URL di WordPress: Impostare l'indirizzo del sito e l'indirizzo di WordPress su HTTPS.
- Aprire la console del browser: Identificare le fonti di Mixed Content.
- Creare un backup: Obbligatorio prima delle modifiche al database.
- Bonificare il database: Sostituire i vecchi URL HTTP interni con HTTPS.
- Verificare il page builder: Rigenerare CSS e template.
- Controllare tema e widget: Correggere i link HTTP hardcoded.
- Reindirizzare HTTP a HTTPS: Configurare un reindirizzamento 301 pulito.
- Svuotare la cache: Verificare WordPress, plugin, server, CDN e browser.
- Testare le sottopagine: Non limitarsi a controllare solo la home page.
- Testare WooCommerce: Controllare checkout e pagamenti.
- Verificare sitemap e Search Console: Confermare gli URL HTTPS.
Domande frequenti sul Mixed Content
Cos'è il Mixed Content?
Il Mixed Content si verifica quando un sito web viene caricato tramite HTTPS, ma singoli file o risorse sono ancora integrati tramite HTTP.
Perché il mio browser mostra "Non sicuro" nonostante l'SSL?
Spesso ciò è dovuto a Mixed Content, certificato SSL scaduto, configurazione errata del dominio o risorse esterne integrate in modo non sicuro.
Come trovo il Mixed Content?
Aprite la console per sviluppatori del vostro browser con F12 e controllate la scheda Console per verificare la presenza di avvisi di Mixed Content.
Un plugin può risolvere il Mixed Content?
Sì, in molti casi i plugin SSL sono d'aiuto. Tuttavia, una soluzione pulita e permanente è spesso la correzione dei vecchi URL HTTP nel database, nel tema e nel page builder.
Dovrei usare Better Search Replace?
Sì, se i vecchi URL HTTP interni sono memorizzati nel database. Create prima un backup completo ed eseguite inizialmente un ciclo di prova.
Perché l'errore persiste dopo la correzione?
Spesso dipende da cache, CSS del page builder, opzioni del tema, widget o risorse esterne che continuano a essere caricate tramite HTTP.
Devo prestare particolare attenzione all'HTTPS con WooCommerce?
Sì. Carrello, checkout, account cliente e processi di pagamento devono funzionare in modo completamente sicuro tramite HTTPS.
Il Mixed Content è dannoso per la SEO?
Il Mixed Content può compromettere la fiducia, la qualità tecnica e l'esperienza utente. Una struttura HTTPS pulita è chiaramente raccomandata per i siti web professionali.
Ancora nessun lucchetto sicuro?
A volte i link HTTP si nascondono nei page builder, nei file del tema, nei widget o nelle vecchie voci del database. CURIAWEB vi supporta volentieri nell'analisi e nella risoluzione di problemi persistenti di Mixed Content sul vostro sito WordPress.
Richiedi l'analisi del Mixed Content