In vista di un passaggio ad HTTP/2 (almeno per quanto riguarda la mia azienda ed il mio sito personale) ho voluto scrivere un articolo sul protocollo HTTPS che, su alcuni browser, è indispensabile per il passaggio (infatti la maggior parte dei browser supporta HTTP/2 solo su una connessione protetta, il che significa che devi migrare il tuo sito web in HTTPS). Sul perché sia consigliato ad HTTP/2 ne parleremo in un articolo più avanti. Ora è necessario trattare l’HTTPS.
Ovviamente è chiaro che Google voglia che il web sia più sicuro. Ha creato quindi una campagna si sensibilizzazione pro HTTPS, spiegando che il passaggio al protocollo può servire anche per una questione di ranking. Hanno persino fatto una guida “Proteggere il sito con il protocollo HTTPS”, che vi consiglio di leggere (dopo questo articolo ovviamente).
Nonostante questa campagna però, meno dello 0,2% dei siti web sono sicuri.
La scusa più frequente è un risparmio sul costo, nonostante ci siano servizi come ssls.com, che li vendono a meno di una pizza margherita. Addirittura Let’s Encrypt offre certificati gratuiti.
Perché passare ad HTTPS?
I dati inviati tramite HTTPS sono protetti tramite il protocollo TLS (Transport Layer Security Protocol), che fornisce tre livelli chiave di protezione:
- Crittografia. Crittografare i dati scambiati per mantenerlo protetto dagli “ascoltatori”. Ciò significa che mentre l’utente sta navigando un sito web, nessuno può “ascoltare” le sue conversazioni, tenere traccia della sua attività su più pagine o rubare le sue informazioni;
- Integrità dei dati. I dati non possono essere modificati o danneggiati durante il trasferimento, intenzionalmente o comunque senza essere rilevati;
- Autenticazione. Questo prova che i vostri utenti comunichino con il sito web previsto. Protegge dagli attacchi man-in-the-middle e costruisce la fiducia degli utenti, che si traduce in altri vantaggi per l’azienda.
Ci sono altri vantaggi, tra cui l’aumento di ranking su Google, ma questo ve l’ho già detto.
Passare ad HTTPS evita anche la perdita di dati referral, che si verifica quando il valore di riferimento nell’header viene eliminato nel momento del passaggio tra un sito web protetto ad uno non protetto. Google Analytics attribuisce il traffico senza il valore di riferimento come diretto e questo è un dato non corretto.
Inoltre è impossibile “iniettare” annunci ads nell’hotspot, se si ha implementato il protocollo HTTP sicuro.
Da leggere: SEO e SEM: qual è la differenza? Meglio uno o l’altro?
Il protocollo HTTPS protegge il mio sito web?
La gente pensa all’HTTPS come un protocollo protetto in grado di proteggere il loro sito web. Anche con l’HTTPS il vostro sito web non è protetto e potrebbe essere ancora vulnerabile a uno o più dei seguenti attacchi:
- Attacchi downgrade;
- Vulnerabilità SSL / TLS;
- Heatbleed, Poodle, Logjam, etc;
- Hack di un sito web, di un server o della rete;
- Vulnerabilità software;
- Attacchi di brute force;
- Attacchi DDOS.
Passate da HTTP a HTTPS
- Iniziate con un server di test. Questo è importante perché potrete provarlo senza incidere sul sito online. Anche se state facendo il passaggio senza un server di test, non c’è quasi niente che potete fare e che non potete rivedere, ma è comunque una buona pratica avere un piano operativo ed avere testato tutto in anticipo;
- Esplorate il sito corrente in modo da conoscere lo stato del sito e confrontarlo successivamente;
- Ottenete un certificato di protezione e installatelo sul server. Ciò varia a seconda dell’ambiente di hosting e non tratterò dell’installazione lato server, ma il processo di solito è ben documentato (mal che vada chiedete supporto a chi vi segue l’hosting);
- Aggiornate i riferimenti nei contenuti. Questo può essere fatto in genere con una ricerca e sostituzione nel database. Tutti i riferimenti ai collegamenti interni dovranno utilizzare il protocollo HTTPS;
- Aggiornate i riferimenti nei template. Ancora una volta, a seconda del modo in cui si distribuisce, questo potrebbe essere fatto in diversi modi, ma è necessario assicurarsi che i riferimenti a script, immagini, collegamenti e così via utilizzino HTTPS;
- Aggiornate i tag canonici. La maggior parte dei sistemi CMS farà questo per voi dopo lo switch, ma controllate lo stesso;
- Aggiornate i tag hreflang se il sito web li usa. Ancora una volta, la maggior parte dei sistemi CMS si prenderà cura di questo, ma è meglio verificare;
- Aggiornate tutti i plugin, i moduli ed i componenti aggiuntivi per essere sicuri che non diano problemi e che non contengano contenuti insicuri (potrebbe, ad esempio, non funzionare la ricerca sul sito);
- Potrebbe essere necessario modificare le impostazioni specifiche del CMS che state utilizzando. Per i principali sistemi CMS, questi sono generalmente ben documentati nelle guide dedicate alla migrazione al nuovo protocollo;
Non abbiate paura: passate al protocollo sicuro!
- Verificate il sito per assicurarvi che nessun link sia rotto. Per far questo potete usare un tool come Screaming Frog;
- Assicuratevi che gli script esterni richiamati supportino HTTPS;
- Forzate l’utilizzo dell’HTTPS mediante i reindirizzamenti. Questo dipenderà dal server e dalla configurazione, ma per Apache, Nginx e IIS è tutto ben documentato;
- Aggiornate i vecchi reindirizzamenti attualmente in uso (e mentre ci siete fate un po’ di pulizia). La dovuta accortezza sui reindirizzamenti e sulle catene di reindirizzamento fa la differenza: i problemi principali delle migrazioni al nuovo protocollo derivano proprio da questo;
- Aggiornate la sitemap per utilizzare le versioni HTTPS degli URL;
- Aggiornate il file robots.txt per includere la nuova sitemap.;
- Abilitate l’HSTS. Questo indica al browser di utilizzare sempre HTTPS, che elimina un controllo sul lato server e rende il caricamento del sito web caricato più veloce;
- Aggiungete la versione HTTPS del sito agli strumenti webmaster di tutti i motori di ricerca e caricate la nuova sitemap con HTTPS;
- Aggiornate il file disavow;
- In Google Analytics, assicuratevi di aggiornare l’URL predefinito per monitorare correttamente l’HTTPS e aggiungete le note su quando avete effettuato la modifica per un futuro riferimento;
- Aggiornate i social counter. Troverete delle guide nel web per capire come fare;
- Aggiornate tutte le campagne Pay per click, newsletter o di marketing ed utilizzate le versioni HTTPS degli URL;
- Aggiornate tutti gli altri strumenti come i software di test A / B, le mappe di calore ed il monitoraggio delle parole chiave per utilizzare le versioni HTTPS degli URL;
- Monitorate tutto durante la migrazione e controllate più volte per assicurarvi che tutto stia andando senza intoppi.
Una domanda mi viene spesso chiesta: i collegamenti in entrata dovranno essere aggiornati? Beh, se avete tempo per farlo allora è di sicuro meglio! Ma molto probabilmente siete impegnati con altre cose e non è sicuramente fondamentale correre per farlo. Tuttavia, è necessario che aggiorniate tutte le proprietà (anche con calma, ma fatelo), partendo ad esempio dai profili sociali.
Da leggere: WordPress? 5 buoni motivi per sceglierlo per il tuo sito o il tuo blog
Problemi comuni migrando a HTTPS
Ecco cosa potrebbe andar storto:
- Impedire a Google di eseguire la scansione della versione HTTP del sito o la scansione del sito in genere (di solito accade perché non è possibile consentire i bot dal server di test);
- Problemi di duplicazione dei contenuti, con entrambe le versioni HTTPS e HTTP delle pagine;
- Diverse versioni della pagina che vengono visualizzate in HTTP e HTTPS.
La maggior parte dei problemi comuni con le migrazioni HTTPS è il risultato di un reindirizzamento non configurato correttamente. (In alcuni casi ho sistemato siti che hanno cambiato la loro struttura solo per il passaggio ad HTTPS).
I redirect sono fondamentali
Come sopra indicato, i principali problemi che vedo con la migrazione a HTTPS hanno a che fare con i reindirizzamenti.
Assicuratevi di controllare bene tutte le pagine: homepage e secondarie. Non pensiate di essere infallibili: fatevi usare da tool come Screaming Frog.
I miei ultimi pensieri su HTTPS
In poche parole, l’HTTPS non andrà mai in disuso. HTTP/2, Google AMP ed il protocollo QUIC di Google (che probabilmente saranno presto standardizzati) richiedono, per utilizzarli, tutti collegamenti sicuri per i browser. Resta il fatto che è arrivato il momento di passare al protocollo sicuro.
La maggior parte dei problemi che vedo sono dovuti ad un cattiva implementazione del protocollo. Se seguite i passaggi descritti, non dovreste avere problemi con la migrazione da HTTP a HTTPS.
Il mio commento favorito sull’argomento è di Gary Illyes, un analista di Google Webmaster Trends:
“If you’re an SEO and you’re recommending against going HTTPS, you’re wrong and you should feel bad.”
— Gary Illyes (@methode) August 18, 2015
Hai bisogno di supporto? Contattaci e ti forniremo tutta la consulenza necessaria!