Google ha annunciato qualche mese fa l’intenzione di migliorare il posizionamento e la visibilità per quei siti che implementano un certificato SSL sul dominio e che quindi forniscono una connessione sicura in HTTPS. Questa iniziativa, sponsorizzata in modo così deciso da Google, ha l’obiettivo di stimolare l’uso di connessioni protette mirate aumentare la sicurezza e privacy degli utenti.
Leggendo il comunicato di Google in merito alla variazione dell’algoritmo:
La sicurezza è una priorità per Google […] dopo mesi e mesi di test abbiamo iniziato a considerare l’HTTPS come fattore di ranking […] Per il momento si tratta di un fattore davvero leggero, che ha impatto solo nell’1% delle ricerche globali […] nel frattempo, vogliamo dare il tempo ai web master di passare all’HTTPS. Tra un pò di tempo potremmo decidere di rafforzare il segnale di ranking poichè vogliamo incoraggiare tutti i proprietari di siti a passare dall’HTTP all’HTTPS per rendere sicuro il Web.
Se volete leggere il comunicato completo, lo trovate a questo indirizzo: http://googlewebmastercentral.blogspot.it/2014/08/https-as-ranking-signal/
Il passaggio da HTTP a HTTPS fa parte di un trend ormai consolidato negli ultimi anni e indicato ormai come una best practice. Molti dei siti che usiamo tutti i giorni (quali Facebook, Twitter, Google, Microsoft, PayPal, Amazon, banche online, etc.) hanno già implementato SSL sui loro domini e moltissimi altri siti ad alta diffusione stanno seguendo queste indicazioni (magari sotto la spinta di usare questa leva per migliorare il proprio posizionamento e la propria autorevolezza!).
Alla base di questa azione c’è comunque il tentativo encomiabile di migliorare la sicurezza della rete, mano mano che questa assume una sempre maggiore importanza e diventa sempre più critica nella vita di tutti noi.
Cos’è HTTPS e perchè è consigliato (anche) per il tuo sito
HTTPS (Hyper Text Transfer Protocol Secure) è la versione sicura del Hyper Text Transfer Protocol ossia quello che noi tutti conosciamo come HTTP. Quando un computer si collega ad un sito che usa il protocollo HTTPS, tutta la sessione di comunicazione viene criptata utilizzando un certificato SSL rilasciato da un ente certificatore terzo, che si occupa appunto di rilasciare i certificati SSL.
Quindi, nel caso di un browser collegato ad un sito HTTPS, tutte le comunicazioni da e verso il sito HTTPS sono criptate, impedendo in questo modo ad eventuali utenti male intenzionati di inserirsi nel flusso dati e carpirne i contenuti. Capiamo quindi come questo elemento sia fondamentale tutte le volte che usiamo le nostre credenziali e dati privati su un sito web.
Come fare a capire se un sito usa HTTPS ed è sicuro
Un utente può capire facilmente se il sito è sicuro guardando l’URL sulla barra di indirizzo del sito. Se l’indirizzo della pagina che si sta visitando inizia con https:// allora il sito usa SSL per la comunicazione.
Nell’immagine si nota la presenza del lucchetto verde prima dell’indirizzo del sito.
Molti browser evidenziano la parte iniziale dell’url con verde. A secondo del tipo di certificato, alcuni siti mostrano prima dell’URL il nome del proprietario del certificato, come extra garanzia. Questo dipende dal tipo di certificato in uso. In termini di sicurezza, anche se non è presente il nome, possiamo essere sicuri del sito che stiamo visitando.
Come verificare che l’impostazione del certificato SSL sia corretto
Un’ottimo sito per verificare che il tuo certificato SSL sia correttamente impostato sul dominio e che tutto funzioni a dovere è https://www.ssllabs.com/ssltest/
Questo incredibile ed utilissimo servizio gratuito fornisce una profonda ed esaustiva analisi di ogni SSL web server. Questa analisi può mettere in luce problemi di configurazioni, vulnerabilità e molti altri elementi.
La verifica può richiedere alcuni minuti, ma ne vale la pena. Non tralasciate questo controllo!
Check list da seguire nella migrazione da HTTP a HTTPS
Di seguito una serie di punti da seguire se non si vuole rischiare di danneggiare il sito dal punto di vista del posizionamento nel trasferimento da http ad https.
1. Controlla che tutti i link alle risorse interne puntino alla versione HTTPS
Controlla che tutti i file e le risorse che utilizzi nel tuo sito, quindi i riferimenti anche a file di immagini, CSS, javascript e librerie varie, siano correttamente puntati verso la versione HTTPS. Un ottimo tool per fare questo è lo strumento di sviluppo di Firefox. Analizzando le richieste di rete possiamo verificare che queste provengano da HTTPS. Un’altro strumento che abbiamo usato e trovato utile è https://www.whynopadlock.com
2. Controlla i tuoi file CSS
Controlla anche il contenuto dei tui file CSS ed il riferimento alle immagini
Controllare che i CSS facciano riferimento ad immagini nel modo corretto, nel caso vengano usati degli url assoluti
3. Imposta i redirect 301 da HTTP ad HTTPS
Imposta un redirect 301 su tutte la pagine del sito che ripunti tutti gli URL alla versione HTTPS. Questo può essere fatto tramite .htaccess se sei su un server Linux.
Un esempio di redirect di questo tipo può essere il seguente:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]
4. Controlla i canonical tags del tuo sito
Controlla che tutti i tag canonical del tuo sito puntino alla versione HTTPS dell’URL. Il tag canonical, piazzato di solito nell’head del tuo file, indica i motori di ricerca qual’è la versione principale del file che stiamo visitando e quella che dovrebbe essere indicizzata. L’URL che compare nel tag canonical dovrebbe essere quindi quella con HTTPS
5. Verifica il codice ed i link hard-coded
Verificare che non siano stati usati link assoluti nella fase di programmazione del sito o nei redirect (ad esempio, il redirect alle pagine non trovate 404). Verificare che eventuali funzionalità complesse (shopping cart, registrazioni, login, gestione degli errori, etc.) facciano redirect alle pagine https. Verificare laddove possibile tutte le procedure ‘complesse’. In ogni caso, è buona norma, tutte le volte che si scrive del codice usare URL relativi. Questo, ogni buon programmatore lo sa!
6. Registra la versione HTTPS del sito sui Webmaster Tools
Usa il nuovo sito in versione HTTPs per fare una nuova registrazione su Google Webmaster Tool e Bing Webmaster Tool
7. Usa lo strumento ‘visualizza come Google’
Usa lo strumento visualizza come Google (lo trovi nel Google Webmaster Tools in Scansione -> Visualizza come Google) e verifica che il sito venga correttamente scansionato da Google e che possa essere visualizzato correttamente.
8. Aggiorna la sitemap
Aggiorna la tua sitemap, modificando tutti gli url da http ad https. Cerca di lasciare anche la vecchia, almeno per un certo periodo (uno o due mesi) per garantire una corretta registrazione dei redirect 301
9. Aggiorna il tuo file robots.txt
La tua sitemap potrebbe essere stata registrata sul file robots.txt. Verifica che quindi questo abbia il corretto puntamento alla sitemap del sito https. Verifica che il file non blocchi l’accesso alle risorse importanti per la corretta visualizzazione del sito
10. Se necessario, Aggiorna il tuo Google Analytics
In generale, il nuovo snippet di GA dovrebbe gestire correttamente lo switch da http ad https. In ogni caso verifica di avere una versione aggiornata dello snippet e che il traffico venga correttamente registrato
11. Implementa HTTP Strict Transport Security (HSTS)
HTTP Strict Transport Security (HSTS) è un meccanismo di politica di sicurezza proposta per il web dove un server web dichiara di interagire col browser usando solamente una connessione sicura (come HTTPS). In questo modo il server comunica al browser di voler usare solo la versione HTTPS del sito. Questo migliora decisamente le performances, eliminando i redirect e fornendo un livello di sicurezza migliore
12. Trasferisci i disavow file
Se hai usato questo strumento sul tuo sito, dovresti fare una copia del file e trasferirlo nel nuovo profilo Google Webmaster Tools, per essere sicuro che le indicazioni ivi riportate valgano anche per questa versione del siti
13. Verifica i tuoi widget di social sharing
E’ frustrante pensare che tutti i contatori dei tuoi social sharing vadano tutti a zero dopo la migrazione (sì, in effetti potrebbe accadere). Ad oggi molti social network trasferiranno automaticamente il conto attraverso le loro API senza bisogno di un intervento esterno. Tuttavia alcuni social non hanno API così evolute, e potrebbe essere necessario del lavoro extra per trasferire i contatori da una versione all’altra. Allo stato attuale i social network che trasferiscono il conteggio in modo trasparente sono: Facebook, Google +, Linkedin
14. Passare AddThis da HTTP ad HTTPS
Se usi Addthis come widget per la condivisione sociale, la cosa è molto semplice.
Cerca le seguenti linee di codice nella tua pagina, dove hai inserito il codice per la condivisione,
http://s7.addthis.com (o in anche http://s5.addthis.com)
E sostituiscilo con il seguente
https://s7.addthis.com/
A questo punto tutto dovrebbe continuare a funzionare correttamente e le tue condivisioni social dovrebbero restare attive anche dopo la modifica del dominio ad https
15. Se usi Disqus per la gestione dei commenti
Anche Disqus supporta HTTPS anche se di default è caricato tramite HTTP. Anche in questo caso con una semplice modifica è possibile passare in modalità SSL semplicemente passando l’URL di caricamento a //.
Nel caso infatti dell’embedding dello snippet di commenti basterà modificare
dsq.src = ‘http://’ + disqus_shortname + ‘.disqus.com/embed.js’;
con il seguente codice (usando quindi // al posto di http)
dsq.src = ‘//’ + disqus_shortname + ‘.disqus.com/embed.js’;
ed analogamente, i contatori AddThis possono essere recuperati nella versione HTTPS con
s.src = ‘//’ + disqus_shortname + ‘.disqus.com/count.js’;
Nel caso si verificasse ancora qualche problema di recupero dei commenti, possiamo forzare ulteriormente l’HTTPS aggiungendo ?https al link di caricamento del .js come indicato di seguito
dsq.src = ‘//’ + disqus_shortname + ‘.disqus.com/embed.js?https’;
E con questo è tutto, buon passaggio ad HTTPS!
ciao. io ho avuto una forte ricaduta nei motori di ricerca da http a https. ritorno all’ http? ci vuole del tempo? è da un mese che ho fatto il passaggio e gli accessi sono calati di molto. boh
Ciao
il passaggio di per sè non causa perdita di traffico, abbiamo passato decine di siti e se il passaggio viene effettuato correttamente non si verificano perdite di traffico, se non temporanei. Il problema è sicuramente legato a qualche altra ragione. Hai verificato tutti gli aspetti citati nell’articolo? Se mi invii il link al sito posso dare rapidamente un’occhiata.
Luca
Grazie Luca. Il sito è giocareinsicurezza.com
è chiaramente un problema di installazione del certificato. Accedendo al vostro sito compare il messaggio seguente. Ti consiglio di contattare l’amministratore del server e verificare che il certificato SSL sia valido e correttamente installato. Questo spiega perchè hai questo calo di traffico
https://uploads.disquscdn.c…
Connessione sicura non riuscita
Si è verificato un errore durante la connessione a http://www.giocareinsicurezza.com. Il certificato del peer è stato revocato. Codice di errore: SEC_ERROR_REVOKED_CERTIFICATE
La pagina che si sta cercando di visualizzare non può essere mostrata in quanto non è possibile verificare l’autenticità dei dati ricevuti.
Contattare il responsabile del sito web per informarlo del problema.
a me risulta tutto regolare. non è che sia un problema di firefox ? https://www.sslshopper.com/…
forse dipende da
https://support.mozilla.org…
Non saprei, quell’errore non lo abbiamo mai riscontrato, ma Firefox è
abbastanza affidabile sulla sicurezza
https://support.mozilla.org…
Hai verificato anche in Google Search Console, creando una proprietà dedicata all’hhtps per verificare che Google riesca ad accedere. A prima vista vedo anche qualche problema di redirect, in quanto il
http://www.giocareinsicurez…
mi risponde con un 200 e non con un 301 sulla versione https.
Ti consiglierei di ricontrollare tutti i punti che sono riportati nell’articolo che siano stati implementati correttamente.
Fantastico e molto utile, grazie per il post. Gustavo Woltmann
Ciao Luca, anch’io ho perso gran parte del traffico al mio sito http://www.metron-on-line.it dovuto a una forte perdita di posizionamento dopo essere passato ad https. Il passaggio è stato effettuato il 31/12. Fino al 21/1 tutto ok, dal giorno successivo e per 3 settimane ho perso circa il 70% di visite. La cosa strana è che ieri siamo tornati in prima pagina su google e le visite sono tornate ai livelli massimi. Oggi invece siamo di nuovo invisibili e le visite sono bassissime. Sai da cosa può dipendere? Grazie in anticipo! PS. Se necessario, sono disonibile anche a ricevere una consulenza a pagamento
Ciao Claudio
ad una prima occhiata non vedo problematiche, ma occorrebbe avere una scansione prima e dopo il passaggio per individuare dove ci sono state delle perdite e risalire alle cause.
Ho visto che non è implementato il supporto HSTS sul tuo server. Questa sicuramente potrebbe essere una causa di perdita di traffico. E’ un argomento che non avevo introdotto a suo tempo in questa guida ma è ora consigliato anche da Google. Per maggiori info puoi leggere il paragrafo relativo su
https://support.google.com/…
https://uploads.disquscdn.c…
Ciao,
complimenti per l’articolo!
Allora…. sono passato da http a https ma non so se ho fatto tutto per bene.
Su internet ho letto alcuni articoli ma non ho capito bene se devo aggiungere su Google Webmaster Tool tutte le versioni del sito con www/senza http://www….http/https oppure averne solo uno ovvero https://www.sitoweb.it/
Su google mi ritrovo al momento piu versioni del sito!
Puoi dirmi che fare?
Vorrei che comparisse solo questo: https://www.sitoweb.it/
Grazie,
Francesco
Ciao Francesco
hai eseguito i redirect 301 sia da http ad https e da no/www a www?
Se si, allora devi segnalare a Google anche il cambio di indirizzo
Qui una guida in merito. Ovviamente per segnalare il cambio di indirizzo devi mostrare di avere la proprietà del sito e Google ti chiede di verificarlo in search console. Comunque ti metto il link della guida.
https://support.google.com/…
Ciao Luca, il tuo articolo è chiarissimo e ben fatto, complimenti. Anche io ho migrato il mio sito web su https ed ho perso molti utenti, se potresti dare un’occhiata te ne sarei molto grata, il sito è https://www.spyproject.com
grazie
Rossana
ciao Rossana, ho dato una rapida occhiata al tuo dominio su https://www.ssllabs.com/ssl… e vedo che ci sono dei problemi di certificato (mismatch sul nome dominio: l’esito è This server’s certificate is not trusted, see below for details).
Ti consiglio di fare un test e poi sottoporlo ai tuoi amministratori di sistema in quanto credo che abbiate commesso un errore sul certificato. Questo è quello che mi è saltato agli occhi da un rapido controllo, ovviamente ti consiglio di rileggere l’articolo e di verificare che tutti i punti siano stati implementati correttamente!
Grazie per i complimenti