Skip to content

Tutto per WordPress, lo sviluppo web — e non solo

🔒 Impostare HTTPS per WordPress tramite Cloudflare - guida passo passo

🔒 Impostare HTTPS per WordPress tramite Cloudflare - guida passo passo

Visiti un sito e il browser urla «Non sicuro». Il cliente chiude la scheda più in fretta di quanto tu possa spiegare che semplicemente non hai un certificato SSL. Frustrante? Decisamente sì. Soprattutto quando esiste una soluzione gratuita e si configura in 20 minuti.

HTTPS non è più un’opzione, è igiene di base. Google ha dichiarato ufficialmente HTTPS un fattore di ranking già nel 2014, e oggi senza il lucchetto verde i motori di ricerca abbassano semplicemente il posizionamento. I browser segnalano i siti HTTP come non sicuri, i visitatori se ne vanno, le conversioni calano. E se il tuo hosting fa pagare l’SSL, non correre a pagare.

Avviso del browser su connessione HTTP non sicura

Cloudflare fornisce un certificato SSL gratuito, CDN e protezione di base contro gli attacchi in un piano sempre gratuito. Di seguito una guida passo passo: dalla registrazione alla verifica del redirect 301. Ogni passaggio è stato testato su decine di siti, inclusi progetti su WordPress.

💡 Panoramica rapida:

  • Registrati su Cloudflare e aggiungi il tuo sito, il sistema importa automaticamente i record DNS.
  • Scegli la modalità SSL Flexible nella sezione SSL/TLS, il certificato si attiva gratuitamente entro un’ora.
  • Installa i plugin Cloudflare e Cloudflare Flexible SSL, WordPress inizia a funzionare correttamente con HTTPS.
  • Sostituisci tutti i link http:// nel database tramite Better Search Replace, quattro passate seguendo i modelli indicati sotto.
  • Crea una Page Rule «Always Use HTTPS», configura il redirect automatico da HTTP a HTTPS.
  • Verifica il redirect 301 tramite Redirect Detective e aggiorna l’URL del sito nelle impostazioni di WordPress.

Step 1: Registrazione e aggiunta del sito a Cloudflare

Registrati su cloudflare.com, servono solo un’email e una password. Dopo il login, clicca su «Add a site», inserisci il tuo dominio (senza www) e attendi mentre Cloudflare analizza i record DNS. Il sistema troverà automaticamente i record A, CNAME, MX e altri, di solito impiega 10-30 secondi.

Nella schermata successiva, scegli il piano gratuito (Free plan) e conferma i record DNS. Cloudflare proporrà di sostituire i nameserver del tuo dominio con i propri, accedi al pannello del tuo registrar di dominio e specifica i due server NS di Cloudflare (verranno mostrati a schermo). Il cambio dei NS richiede di solito da pochi minuti a 24 ore, ma Cloudflare ti avviserà via email quando il dominio sarà attivo.

Step 2: Scelta della modalità SSL nel pannello Cloudflare

Dopo l’attivazione del dominio, vai su SSL/TLSOverview. Ci sono quattro modalità: Off, Flexible, Full e Full (Strict). Per WordPress senza un certificato server configurato, scegli Flexible, Cloudflare cifra il traffico tra il visitatore e la sua CDN, mentre la connessione tra Cloudflare e il tuo hosting resta HTTP. Questo basta per ottenere il lucchetto verde nel browser.

Scelta della modalità SSL Flexible nel pannello di controllo Cloudflare

Il certificato si inizializza automaticamente. Nella sezione SSL/TLSEdge Certificates comparirà lo stato «Active Certificate», di solito entro un’ora, a volte fino a un giorno.

Stato del certificato SSL attivo nel pannello Cloudflare

Non aspettare l'attivazione completa, verifica subito il sito su https://your_domain. Se la pagina si apre (anche con errori di contenuto misto), il certificato funziona, passa ai plugin.

Step 3: Installare i plugin Cloudflare per WordPress

Prima di qualsiasi modifica, backup. Installa Duplicator e fai una copia completa del sito. Sul serio: basta una query sbagliata sul database e il sito va giù. Il backup ti salva.

Ora due plugin:

  • Cloudflare Flexible SSL, risolve il loop di reindirizzamento che si verifica in modalità Flexible: WordPress crede di lavorare su HTTP, mentre Cloudflare invia richieste HTTPS. Il plugin sostituisce $_SERVER['HTTPS'] con on, e il sito smette di andare in redirect infinito.

  • Cloudflare, plugin ufficiale Cloudflare. Collega l'Automatic Platform Optimization (APO), mette in cache le pagine sui server edge e sincronizza le impostazioni con il pannello Cloudflare. Dopo l'installazione, inserisci la tua email e la chiave API globale da Dashboard → API Tokens.

Installa entrambi, attivali e apri il sito in modalità incognito. Se le pagine si caricano senza loop di reindirizzamento, ottimo, andiamo avanti.

Il database di WordPress contiene centinaia di link interni con http://, a immagini, script, stili, altre pagine. Finché non vengono sostituiti con https://, il browser segnalerà contenuto misto e il lucchetto verde mostrerà un avviso.

Installa Better Search Replace, 1 milione di installazioni attive e valutazione 4.3 stelle. Lo strumento funziona direttamente nel pannello di amministrazione e supporta la modalità dry run.

Fai di nuovo un backup. È la quarta volta che lo dico, e non è un caso: un search-replace sull'intero database è irreversibile.

Interfaccia di ricerca e sostituzione del plugin Better Search Replace

Vai su StrumentiBetter Search Replace. Esegui quattro passaggi rigorosamente in questo ordine:

Nel campo "Cerca":

1src="http://your_domain

Nel campo "Sostituisci con":

1src="

Perché: rimuovere il dominio dagli attributi src delle immagini interne, lasciando un percorso relativo. Il browser sostituirà da solo il protocollo della pagina corrente.

Cerca:

1src="http://

Sostituisci con:

1src="//

Motivo: le risorse esterne (iframe, font, script CDN) vengono convertite nel formato indipendente dal protocollo //, così da utilizzare HTTPS se disponibile.

Passaggio 3: Tutte le menzioni del dominio con http

Cerca:

1http://your_domain/

Sostituisci con:

1https://your_domain/

Passaggio 4: Root del dominio senza slash

Cerca:

1http://your_domain

Sostituisci con:

1https://your_domain

Per ogni passaggio: seleziona tutte le tabelle (Ctrl+A), deseleziona "Esegui come prova", clicca "Esegui cerca/sostituisci". Dopo il quarto passaggio verrai reindirizzato alla pagina di login, è normale: WordPress è passato a HTTPS. Effettua di nuovo il login.

Apri il sito, naviga tra le pagine, controlla la console sviluppatore (F12 → Console). Cerca errori di Mixed Content. Se ne trovi, elimina i link http:// rimanenti nei file del tema o nei plugin personalizzati manualmente (tramite editor di codice o con lo stesso Better Search Replace con sostituzioni mirate).

Step 5: Configurare il redirect HTTP → HTTPS tramite Page Rules

In questo momento il tuo sito è accessibile sia via HTTP che HTTPS. Devi forzare tutti i visitatori (e i motori di ricerca) a usare solo HTTPS. Per questo, servono le Page Rules di Cloudflare.

Vai su RulesPage Rules e clicca Create Page Rule:

Pulsante Crea Page Rule nel pannello Cloudflare

Nel campo URL inserisci:

1http://your_domain/*

Nel menu a tendina "Then the settings are" seleziona Always Use HTTPS. Clicca Save and Deploy.

Configurazione della regola Always Use HTTPS per il redirect

Ora, visitando http://your_domain il visitatore viene reindirizzato automaticamente a https://your_domain. Apri il sito via HTTP in incognito, il redirect dovrebbe attivarsi.

Step 6: Aggiornare l'URL del sito nelle impostazioni di WordPress

Dopo le sostituzioni nel database, WordPress potrebbe conservare il vecchio URL. Vai su ImpostazioniGenerali, controlla i campi:

  • Indirizzo WordPress (URL): https://your_domain
  • Indirizzo sito (URL): https://your_domain

Se compare http:// o //your_domain, sostituisci con https://your_domain e salva. Senza questo passaggio, alcuni plugin e il feed RSS potrebbero continuare a usare HTTP.

Step 7: Verifica del redirect 301

Controllo finale: servizio Redirect Detective. Incolla http://your_domain e avvia la verifica. Dovresti vedere la catena:

1301 Moved Permanently → https://your_domain/
2200 OK
Risultato del controllo del redirect 301 nel servizio Redirect Detective

301 è un redirect permanente, esattamente ciò che i motori di ricerca si aspettano. Se vedi un 302 o una catena di più di due passaggi, ricontrolla le Page Rules e le impostazioni di WordPress.

Dopo la verifica riuscita, lascia passare un paio di giorni: i motori di ricerca reindicizzeranno le pagine in HTTPS e in Search Console aggiungi la versione HTTPS del sito come nuova proprietà.

Più chiaro in video

Se i passaggi testuali sollevano dubbi, ecco un video di 10 minuti sulla configurazione di Cloudflare su WordPress con dimostrazione a schermo e spiegazione vocale di ogni clic:

Il video mostra il processo dal vivo, dall'aggiunta del dominio alla verifica del redirect, utile se l'interfaccia del tuo pannello differisce dagli screenshot.

⁉️🤔 Domande frequenti

In cosa si differenzia Flexible SSL da Full e Full (Strict)?

Flexible cifra il traffico solo tra il visitatore e Cloudflare. Full, tra il visitatore e Cloudflare e anche tra Cloudflare e il server (richiede un certificato sull'hosting, anche auto-firmato). Full (Strict), come Full, ma il certificato del server deve essere valido ed emesso da un'autorità attendibile. Per la maggior parte dei siti WordPress Flexible è sufficiente, ma Full (Strict) è il gold standard della sicurezza.

Devo pagare per il certificato SSL di Cloudflare?

No. Il piano gratuito include certificato SSL, CDN, WAF di base e protezione DDoS. I piani a pagamento (Pro, $20/mese, Business, $200/mese) aggiungono accelerazione mobile delle pagine, WAF avanzato e supporto prioritario.

Cosa fare se i fogli di stile si rompono dopo il passaggio a HTTPS?

Apri la console del browser (F12), molto probabilmente ci sono errori di Mixed Content. Significa che nel database sono rimasti link http:// a CSS e JS. Ripeti il passo 4, prestando attenzione ai passaggi 2 e 3, poi svuota la cache di Cloudflare (Caching → Purge Everything).

È obbligatorio installare entrambi i plugin di Cloudflare?

Cloudflare Flexible SSL è obbligatorio in modalità Flexible (senza, WordPress andrà in loop di redirect). Il plugin ufficiale Cloudflare è consigliato per l'APO e una comoda gestione della cache direttamente dal pannello di amministrazione di WordPress, ma tecnicamente non è obbligatorio per il funzionamento HTTPS.

Quanto tempo richiede la configurazione completa?

20-30 minuti: 5 minuti per la registrazione e il cambio NS, 5 per la modalità SSL e i plugin, 10 per il search/replace nel database, 5 per i Page Rules e la verifica. Più il tempo di attesa per il cambio NS (fino a 24 ore, ma di solito 5-15 minuti).

Posso tornare a HTTP se qualcosa va storto?

Sì. Disattiva il Page Rule Always Use HTTPS, rimuovi i plugin di Cloudflare, esegui la sostituzione inversa https://your_domainhttp://your_domain tramite Better Search Replace e ripristina i nameserver del registrar. L'intero processo è reversibile.

HTTPS gratuito è realtà, non un compromesso

Cloudflare ha tolto dall'agenda la domanda «dove trovare i soldi per l'SSL». Il piano gratuito copre certificato, CDN e protezione dagli attacchi, e tutto questo senza una riga di codice. Sette passi dalla registrazione alla verifica del redirect richiedono 20 minuti, e il risultato, il lucchetto verde, la fiducia dei visitatori e un plus nel karma dai motori di ricerca, resta per sempre.

Se il tuo hosting offre SSL a pagamento, ora conosci l'alternativa. E se Cloudflare è già aggiunto ma HTTPS ancora non funziona, ripercorri i passaggi. In 9 casi su 10 il problema è in un passaggio saltato di Better Search Replace o in una modalità SSL non corretta.

Non rimandare. Ogni giorno senza HTTPS sono visitatori persi e posizioni in classifica nei risultati di ricerca. Apri cloudflare.com e aggiungi il tuo sito adesso.