Come passare da HTTP a HTTPS e vivere felici, senza Mixed Content.

ATTENZIONE: questo articolo è più vecchio di un anno, e potrebbe non essere più attuale, sei pregato di tenerne conto.

Il passaggio di un sito da HTTP a HTTPS è il giochino del momento, tutti sono alla ricerca del mitico lucchettino verde per paura di penalizzazioni da parte di Google, e per infondere maggior fiducia ai propri visitatori e clienti.

Per passare ad HTTPS è necessario dotarsi di un certificato SSL, e questa è un’operazione molto semplice, in quanto molti hosting si sono attrezzati per offrirli, sia gratuitamente che a pagamento, e mettono a disposizione procedure più o meno semplici per l’attivazione.

A questo punto è possibile caricare il sito con https, ma spesso succede che il lucchettino diventa verde solo per pochi secondi, poi ritorna tutto grigio.

In genere è un problema di “mixed content”, ovvero di contenuti misti https e http nelle pagine del sito, come immagini e link interni.

Vediamo come risolvere il problema dei mixed content.

Installare un certificato SSL

Come già evidenziato, questa è un’operazione molto semplice presso sempre più hosting.

Nel pannello di controllo di hosting come OVH e Siteground si possono trovare certificati SSL gratuiti, tipo quelli di Let’s Encrypt, o in alternativa certificati professionali a pagamento, in entrambi i casi l’attivazione richiede pochi click.

In altri casi, invece, è necessario procurarsi il certificato da soli e installarlo tramite le opzioni previste nei pannelli di controllo tipo Plesk o cPanel, qui magari la faccenda si complica un pochetto se non si è molto pratici.

Roberto Rota esperto WordPress e WooCommerceHai bisogno di aiuto con questo articolo?
Se hai bisogno di assistenza per il tuo sito WordPress, per mettere in pratica queste istruzioni, contattami!

Certificati SSL gratuiti o a pagamento?

Per come la vedo io, dipende solo dalla tipologia di sito che li andrà ad utilizzare.

Inoltre, trovo spropositato il prezzo che alcuni enti applicano ai loro certificati, e il ricarico che molti hosting applicano.

I certificati SSL gratuiti di Let’s Encrypt, ente no profit, sono validi e assolvono il loro compito egregiamente nella maggior parte dei casi, dai blog ai siti aziendali ed e-commerce.

I certificati a pagamento arrivano a certificare il proprietario del dominio, e questo può essere una maggiore garanzia per taluni siti. La differenza la si può notare in alcuni siti, come Paypal ed alcune banche ad esempio, dove vicino al lucchetto verde, al posto del classico “Sicuro”, appare il nome dell’azienda proprietaria del sito.

Se non sei un istituto di credito, vai tranquillo con un certificato gratuito Let’s Encrypt. A cambiare, nel caso, sei sempre in tempo.

HTTPS e mixed content

Come accennavo all’inizio, i contenuti misti sono il classico problema che quasi tutti si ritrovano dopo aver passato il sito ad HTTPS.

I browser non gradiscono questa situazione, la ritengono insicura e ti avvisano, negandoti il tanto agognato lucchettino verde.

Per risolvere, bisogna cambiare nel database i link interni del sito (e solo quelli interni, che puntano allo stesso sito) da http:// a https://.

Si può lavorare direttamente nel database, facendo un cerca e sostituisci, ma bisogna fare molta attenzione ai campi serializzati che potrebbero creare problemi.

Altrimenti ci sono dei plugin che vengono in aiuto, come SSL Insecure Content Fixer.

Non sono plugin facili, ed effettuano operazioni molto delicate, occorre prestare molta attenzione alle indicazioni e, nel dubbio, lasciar fare a qualcuno che ci capisca qualcosa.

In qualsiasi caso, prima di metterci mano, è importantissimo fare un backup del database!

Accorgimenti finali per vivere felici con HTTPS

Quando il sito finalmente si è guadagnato il suo bel lucchettino verde, bisogna preoccuparsi anche degli effetti collaterali sui motori di ricerca, per la SEO.

Con una semplice indicazione nel file .htaccess, si forzano i visitatori ad usare la versione https del sito (sostituire www.nomesito.it con il dominio corretto), facendo un bel redirect di tutte le richieste:

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.nomesito.it/$1 [R=301,L]

È utile anche indicare a WordPress di forzare i login e la bacheca in HTTPS, aggiungendo questa istruzione nel file wp-config.php:

define('FORCE_SSL_ADMIN', true);

Infine è pure il caso di informare della nuova situazione i vari tools esterni utilizzati, specie quelli legati alla SEO come Analytics e Search Console.

Conclusioni

Questa, se vogliamo, potrebbe essere la versione breve di una guida al passaggio ad HTTPS su WordPress, e già così il grosso è fatto.

Volendo ci sono anche altre cose da valutare, ma sono cose per gli addetti ai lavori, che richiedono valutazioni ponderate sito per sito.

Tu hai già passato il tuo sito in HTTPS?

Se non lo hai ancora fatto, per paura di fare danni, o se hai qualche problema, contattami se ti serve assistenza, anche solo per una valutazione o un consiglio..

Che ne pensi?
Domande? Suggerimenti?
Lascia un commento…

Condividi se ti è piaciuto!

Condividi su facebook
Condividi su twitter
Condividi su linkedin
Condividi su whatsapp

Maggori informazioni:

Roberto Rota

Roberto Rota

Libero professionista, un "artigiano del web", lavoro nella comunicazione in rete da quando esiste Internet. Mi occupo principalmente di assistenza su WordPress e assistenza e consulenza WooCommerce, seguo la realizzazione di progetti web, in particolare siti di e-commerce, visibilità e comunicazione in rete. Il mio curriculum è su Linkedin, e mi puoi trovare anche su Instagram, FaceBook e Twitter.

CONTRIBUISCI A QUESTO SITO
Se il mio lavoro ti è stato di aiuto,
e vuoi che io continui a publbicare,
contribuisci allo sviluppo di questo sito
con una donazione su PayPal.

26 commenti su “Come passare da HTTP a HTTPS e vivere felici, senza Mixed Content.”

  1. Ciao Roberto,

    ho risolto: avevo modificato l’url della pagina da my-account mio-account e questo evidentemente creava problemi con qualche funzione del codice predefinita.

    Grazie ancora.

  2. ps. se aggiungo qualche cosa al carrello e poi vado al Checkout e provo ad accedere da “Sei già un cliente? Clicca qui per accedere” allora mi fa entrare correttamente.

  3. ps. ho provato anche ad inserire il tuo codice sopra “define(‘FORCE_SSL_ADMIN’, true);” in wp.config e a Forzare il pagamento SSL nelle impostazioni di woocommerce ma il problema resta.

  4. Ciao Roberto, chiedo ancora il tuo aiuto:

    ho realizzato un sito con woocommerce e tutto è filato liscio fino a quando ho provato ad entrare come utente già registrato (come cliente che ha già effettuato un acquisto in passato e che vuole andare ne Il Mio Account).

    Faccio presente che il sito è in https con un Certificato SSL Let’s Encrypt gratuito.

    Il problema è che se provo ad accedere come cliente già registrato, una volta inserito nome utente e password, cliccando su accedi la pagina si ricarica ma non succede nulla cioè e come se non avessi fatto il login.

    Inizialmente credevo che il problema potesse dipendere da alcune modifiche che avevo fatto al codice del template, così avendo una copia di backup antecedente a tali modifiche l’ho installato in un dominio di prova senza SSL e ho proceduto a verificare che tutto funzionasse correttamente, ed infatti riesco ad accedere senza problemi come cliente registrato.

    Ho poi quindi provveduto a caricare la copia del sito funzionante sul dominio vero e proprio (quello con SSL) ma ancora una volta riscontro il problema del mancato accesso all’area personale come spiegato sopra.

    A questo punto credo che il problema dipenda proprio dal fatto che il sito gira in https (oppure dal fatto che i 2 domini girano su hosting diversi).

    Puoi gentilmente darmi qualche consiglio?

    Grazie.

  5. Volevo sapere se dopo tot mesi Really Simple SSL può essere tolto, io più che altro ero preoccupato per l’indicizzazione dei miei link ma ora penso siano stati sostituiti sui motori.

      1. Ciao Alex l’hai testato? Puoi spiegarmi il funzionamento, cercavo un plugin che mi sistemasse i redirect e che poi sia possibile disabilitarlo. Purtroppo non so dove andare a mettere mano e mi serve qualcosa di automatico.

  6. Su alcuni siti vedo che accanto al lucchetto, compare il nome dell’azienda mentre su altri questo non succede. Quali sono i certificati che permettono questa informazione accanto al lucchetto?
    Grazie

    1. Si tratta di certificati SSL avanzati, del tipo “Extended Validation”, e per questo costano parecchio di più di altri certificati.

      In genere i venditori di certificati SSL hanno diversi tipi in catalogo, e puoi valutarne i prezzi, da quello che ho potuto vedere si parte dai 200 Dollari per un certificato EV.

      rob

  7. Ciao Roberto,
    sai se un Certificato SSL Let’s Encrypt funziona con Woocommerce?
    Ed eventualmente che procedura consigli per l’installazione?
    Grazie.

    ps. conoscevi Casimirri di Modena?

    1. Ciao Eros, Let’s encrypt è un buon certificato gratuito, se vuoi qualcosa di più devi rivolgerti ai certificati a pagamento, ma ho diversi WooCommerce che lo usano senza problemi.

      La procedura dipende dal tuo hosting, molti ormai lo offrono con pochi click.

      No mi dispiace, il nome non mi dice nulla.

      rob

  8. Ciao Rob articolo interessante, ma come richiedo un certificato SSL su ovh che peraltro vedo già attivo anche se di fatto non lo è? Non vedo opzioni per attivare let’s encrypt ho un piano personal. Grazie

    1. Non so come funziona per i piani personal, mai visto uno, ma sui Pro basta ordinare il certificato gratuito dalle impostazioni del dominio, e attivare SSL nelle opzioni dell’hosting alla voce multidominio.

      rob

  9. Francesco d'Elia

    Really Simple SSL lo sto usando ma teniamo presente che non cambia i links in https ma fa un redirect che funziona benissimo. Prima attivi l’SSL, poi se ne hai voglia ti editi i links a mano..:-)

      1. Francesco d'Elia

        Zitto va. Che ci ho messo due giorni a migrare i links di un sito in cinque lingue con 600 immagini..:-)

  10. Commento il mio post perché sembra che il link sia stato rimosso, non so se è solo per la fase di moderazione.

    Ad ogni modo il plugin è: “Really Simple SSL” v. 2.5.7 e l’autore è Rogier Lankhorst.

    Un cordiale saluto,


    Luca.

    1. Ciao Luca, lo avevo trovato tempo addietro e su qualche sito mi aveva dato dei problemi, tanto che l’ho messo da parte.

      Però era diverso tempo fa, magari è migliorato nel frattempo.

      Grazie del feedback, lo proverò sicuramente.

      Roberto

  11. Buona sera Roberto,

    cercando il plugin che suggerisci, ho trovato questo: .

    Sembra funzionare bene e non richiedere particolari lavori di settaggio.

    Te lo segnalo nel caso potesse tornarti utile e per chiedere, nel caso lo conoscessi, se ci sono controindicazioni al suo uso.

    Grazie mille per il contributo che dai con i tuoi articoli!


    Luca.

  12. Ciao Roberto, come sempre il migliore, stavo effettuando alcuni test, ma purtroppo ho riscontrato un problema, quando vado ad aggiungere le tre righe di codice al file .htaccess, il sito non si cari più o per meglio dire, si carica, ma senza i CSS.
    All’interno del file, ho solamente le righe di codice di default di WP, nient’altro….
    Hai qualche idea in merito?

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Cerca nel sito:

Assistenza specializzata WordPress e WooCommerce

Altri articoli

Mandami un messaggio

Ciao, come posso aiutarti?