La guida definitiva a HTTPS e SSL per WordPress

Pubblicato: 2018-10-16

Probabilmente avrai notato negli ultimi anni che molti dei tuoi siti Web preferiti sono passati da indirizzi HTTP a HTTPS. La lettera aggiunta, pur aggiungendo pochissimo tempo e fatica per la digitazione, aggiunge immenso valore e sicurezza a quei siti web. Non solo avere un sito WordPress HTTPS renderà la tua attività più affidabile per i visitatori, ma si posizionerà anche più in alto nelle ricerche.

Che cos'è HTTPS?

Se HTTP sta per protocollo di trasferimento ipertestuale . HTTPS sta per protocollo di trasferimento ipertestuale sicuro . Il Mozilla Developer Network (MDN) ha una definizione fantastica e semplice per il protocollo:

HTTPS ( HTTP Secure ) è una versione crittografata del protocollo HTTP. Di solito utilizza SSL o TLS per crittografare tutte le comunicazioni tra un client e un server. Questa connessione sicura consente ai clienti di scambiare in sicurezza dati sensibili con un server, ad esempio per attività bancarie o acquisti online.

Se hai sentito parlare di crittografia end-to-end, questo è quello. Solo i due clienti coinvolti nella transazione possono leggere i dati. Chiunque possa intercettarlo vedrà un pasticcio confuso di personaggi che sono teoricamente indecifrabili.

Suona abbastanza bene, vero? Quindi, come si ottiene questo campo di forza digitale? Tramite SSL.

Che cos'è SSL?

SSL è l'acronimo di secure sockets layer e, ancora una volta, l'MDN può spiegarlo meglio di chiunque altro:

[SSL] è un protocollo utilizzato dalle applicazioni per comunicare in modo sicuro attraverso una rete, impedendo la manomissione e l'intercettazione di e-mail, navigazione web, messaggistica e altri protocolli.

Tutti i browser moderni supportano il protocollo TLS, che richiede al server di fornire un certificato digitale valido che confermi la sua identità per stabilire una connessione sicura. È possibile che sia il client che il server si autentichino reciprocamente se entrambe le parti forniscono i propri certificati digitali individuali.

Questi certificati una volta erano incredibilmente costosi e fuori portata praticamente per tutti tranne che per i più grandi siti web. Vedresti il ​​lucchetto verde su siti come Amazon e Twitter, ma tutti i giorni, i siti WordPress ordinari (come la maggior parte dei nostri) non potrebbero pagare le migliaia di dollari che è costato l'acquisto del certificato.

Certificato SSL Lucchetto Verde

Fortunatamente per tutti noi, poiché i certificati SSL sono diventati più necessari sia per il posizionamento che per l'effettiva conduzione degli affari, il prezzo non solo è diminuito, ma è addirittura svanito per la maggior parte dei siti. Esistono numerosi servizi ora che offrono certificati SSL gratuiti, inclusa la maggior parte degli host. Puoi ottenere un certificato SSL WordPress abbastanza facilmente e senza troppi problemi.

Come ottenere un certificato SSL gratuito per WordPress

Iscriviti al nostro canale Youtube

Il principale fornitore di certificati SSL gratuiti in questi giorni proviene da un servizio chiamato Let's Encrypt.

Utilizzando i loro servizi, ottieni tutti i vantaggi di avere un certificato SSL senza spendere un solo centesimo. Ed ecco la parte migliore: la maggior parte dei principali provider di hosting sta collaborando con Let's Encrypt per rendere l'installazione di un certificato SSL totalmente indolore.

Puoi ottenere un certificato SSL gratuito da Let's Encrypt in due modi.

Opzione 1. Installa il tuo certificato SSL gratuito dal tuo account host (supportato)

Come ho detto, molti host stanno collaborando con Let's Encrypt per aggiungere certificati SSL gratuiti direttamente all'interno dei dashboard cPanel dei loro clienti o nel dashboard stesso dell'host. Ad esempio, se stai ospitando su SiteGround (come me), puoi installare un certificato SSL in circa due secondi. Dal sito di accesso principale, vai nella scheda I miei account e in Servizi extra . Dovresti vedere una sezione chiamata Let's Encrypt Certificates e puoi gestirli e installarli dove vuoi facendo clic sul pulsante Visualizza tutto .

Come ottenere un certificato SSL gratuito

Inoltre, puoi fare clic sul pulsante Vai al cPanel e trovare il logo Let's Encrypt sotto l'intestazione Sicurezza . Ti porta alla stessa pagina di Visualizza tutto .

Come ottenere un certificato SSL gratuito

Da lì, vedrai un elenco di tutti i tuoi certificati installati. Se questa è la tua prima volta, non ne vedrai nessuno. Dovresti, tuttavia, vedere qualcosa del genere:

WordPress SSL e HTTPS

Sia che tu installi un carattere jolly (per tutti i sottodomini sul genitore) o meno, quando premi il pulsante Installa , il tuo certificato SSL di WordPress è in arrivo.

WordPress SSL e HTTPS

Il server elaborerà la tua nuova installazione del certificato SSL di WordPress. Vai tranquillo. Hai quasi finito. Tuttavia, dobbiamo ancora configurarlo. Che è sotto nella prossima sezione.

Inoltre, leggi questo elenco completo di host web che offrono supporto diretto per Let's Encrypt. Il processo per la maggior parte degli host supportati dovrebbe essere simile a SiteGround. Inoltre, alcuni host potrebbero addebitarti l'utilizzo di Let's Encrypt. È una specie di addebito fasullo, onestamente, e molti host che fanno pagare stanno annullando la tariffa poiché Google rende SSL lo standard web. Se il tuo non lo offre gratuitamente, potrebbe essere il momento di prendere in considerazione un host diverso perché non ha in mente i tuoi migliori interessi.

Opzione 2. Usa "SSL gratis" per configurare manualmente il tuo certificato Let's Encrypt

Se il tuo host non supporta Let's Encrypt, potresti comunque essere in grado di ottenere il tuo certificato SSL gratuito utilizzando un sito Web chiamato SSL For Free.

Come ottenere un certificato SSL gratuito

Il sito ti aiuterà a configurare i certificati Let's Encrypt. Tuttavia, avrai bisogno dell'accesso ai dettagli FTP del tuo sito e potenzialmente del supporto del tuo host. Sebbene questo metodo funzioni, è molto pratico e potrebbe essere necessario rinnovare manualmente il certificato alla scadenza. Per questo motivo, dovresti provare a trovare un host che offra il supporto diretto di Let's Encrypt perché semplifica notevolmente il processo. Se non puoi per un motivo o per l'altro, SSL For Free è la tua migliore seconda opzione.

Inoltre, puoi ottenere certificati SSL gratuiti sia da Cloudflare che da FreeSSL. Cloudflare offre un certificato SSL condiviso sul suo piano gratuito. Se stai già utilizzando Cloudflare, questo è un ottimo modo per far funzionare il tuo sito con HTTPS. Poi c'è FreeSSL. Sebbene non sia ancora disponibile pubblicamente, questo è un progetto di certificato SSL gratuito di Symantec. Le organizzazioni non profit o le startup possono ottenere FreeSSL in questo momento. Altrimenti, puoi iscriverti per essere avvisato quando diventa pubblico.

Se scegli di seguire questa strada e installare manualmente il certificato, Sucuri ha una fantastica guida che ti guiderà passo dopo passo attraverso il processo di installazione. Tieni presente, tuttavia, che l'installazione manuale di SSL richiederà di utilizzare la riga di comando, modificare i file WordPress Core e lavorare con i lavori CRON. Se questa non suona come la tua idea di una divertente giornata di lavoro, lascia che ti riporti all'Opzione 1 sopra.

Come configurare il tuo certificato SSL gratuito con WordPress

Indipendentemente dal modo in cui scegli di ottenere il certificato, una volta installato, gli utenti potranno visualizzare una versione sicura del tuo sito accedendo a https://yoursite.com. Ma solo perché la tua connessione HTTPS di WordPress è attiva non significa che hai finito. (Ma lo sei quasi.)

Per configurare correttamente WordPress HTTPS in modo che funzioni con il tuo certificato SSL, devi apportare alcune modifiche. Puoi farlo manualmente... oppure puoi usare un fantastico plugin che fa tutto per te. Si chiama Really Simple SSL ed è all'altezza del suo nome.

Come ottenere un certificato SSL gratuito

Il plugin gestisce l'intero processo. Basta installarlo e attivarlo. Fai attenzione: verrai disconnesso naturalmente da WordPress quando esegui il plug-in per la prima volta. Questo perché il plug-in cambia l'URL predefinito da "http://" a "https://". Tutto quello che devi fare è accedere di nuovo con le tue normali credenziali di accesso. Non c'è bisogno di allarmarsi!

Una volta effettuato l'accesso, vedrai che il plugin ha già apportato le modifiche necessarie. Le opzioni predefinite sono spesso abbastanza buone. Li trovi in Impostazioni – SSL .

WordPress SSL e HTTPS

E se quelli non sono abbastanza buoni e vuoi modificarli ancora, la scheda Impostazioni è in alto.

WordPress SSL e HTTPS

L'opzione di cui probabilmente ti preoccuperai di più è la prima: sostituzione automatica dei contenuti misti . La casella dovrebbe essere selezionata per impostazione predefinita. In caso contrario, controllalo. Quindi salvare la pagina.

Ora sei a posto. Hai installato e attivato con successo WordPress HTTPS e WordPress SSL. Congratulazioni!

Risoluzione degli errori comuni HTTPS/SSL

Solo perché le cose sono installate e pronte non significa necessariamente che funzionino senza intoppi. Potresti incorrere in alcuni problemi sul tuo sito. Tuttavia, i siti HTTPS di WordPress sono facili da risolvere. Esaminiamo le soluzioni ad alcuni dei problemi più comuni.

Ad un certo punto, dopo aver configurato SSL sul tuo sito e passato a WordPress HTTPS, potresti finire per vedere alcune immagini danneggiate sul tuo sito. Le immagini e i contenuti che una volta apparivano perfettamente sul tuo sito potrebbero non apparire come se non esistessero. Non preoccuparti. Non hai fatto niente di male. Il tuo sito pensa solo che quelle immagini non siano sicure (non lo sono), quindi assicurati che l'SSL di WordPress sia impostato per visualizzare contenuti misti.

Esistono due diversi tipi di contenuti misti del sito web. Uno è noto come contenuto attivo misto e risulta quando HTTPS carica uno script su HTTP. Questo è un grande no-no, ma non è quello che sta succedendo qui. L'altro tipo di contenuto misto è noto come contenuto di visualizzazione misto e si verifica quando il contenuto che utilizza una connessione HTTP viene caricato in un sito HTTPS. Anche se potresti non aver caricato attivamente alcuna immagine sul tuo sito Web utilizzando HTTP, c'era qualcosa all'interno di WordPress che le ha riconosciute come tali.

Fondamentalmente, qualcosa sul tuo sito web non è piaciuto che sei passato a HTTPS e invece sta forzando automaticamente HTTP su di loro. Che li rende... beh, non li rende. Quindi risolviamolo.

Il primo e più coerente modo per affrontare i contenuti di visualizzazione misti è utilizzare il plug-in WordPress SSL Insecure Content Fixer.

WordPress SSL e HTTPS

Ogni volta che installi e attivi il plug-in, l'errore di contenuto misto potrebbe scomparire immediatamente. Per impostazione predefinita, il plug-in verrà impostato sul set di regole semplice all'interno delle sue impostazioni (disponibili in Impostazioni - Contenuto non protetto SSL nel pannello di amministrazione di WP). Puoi regolare quanto siano rigorose le regole che segue, fino a forzare HTTPS su tutte le chiamate AJAX, ma la maggior parte delle volte, Simple funzionerà perfettamente. Nella mia esperienza con questo particolare problema, Simple ha funzionato ogni volta. Ma il tuo chilometraggio può variare.

WordPress SSL e HTTPS

Se stai ancora visualizzando contenuti misti

Apri il tuo sito web, fai clic con il pulsante destro del mouse e seleziona Visualizza sorgente pagina o premi CTRL/CMD – U . Vedrai il codice sorgente della pagina che stai guardando. A questo punto, premi CTRL/CMD – F e fai una ricerca per src="http . Sì, con una sola citazione. Sei a posto e puoi andare avanti se vedi 0.0.

Se ottieni risultati restituiti, significa che il sito sta prelevando da un'origine HTTP, non da HTTPS. Per risolvere il problema, devi scavare nel tuo database (ma questo è facile e chiunque può farlo).

WordPress SSL e HTTPS

Il plug-in Better Search and Replace ti consente sostanzialmente di lavorare nel tuo database tramite il pannello di amministrazione di WordPress. Non hai a che fare con SQL o PHP o altro. È una pagina WordPress standard che funziona come un tipico trova e sostituisci che probabilmente hai usato una dozzina di volte nei word processor.

WordPress SSL e HTTPS

Abbiamo una guida completa al plug-in che puoi leggere qui, ma anche la ripartizione per correggere l'errore di contenuto misto SSL di WordPress è piuttosto semplice.

  1. Scarica, installa e attiva il plugin
  2. Fai un backup del tuo sito
  3. Passa a Strumenti – Migliore ricerca Sostituisci nel tuo database WordPress
  4. Nel campo Cerca , inserisci l'URL del tuo sito web con http:// all'inizio
  5. Nel campo Sostituisci con , inserisci invece l'URL del tuo sito web con https://
  6. Evidenzia ogni tabella nel database con CTRL/CMD – A
  7. Assicurati che Esegui come prova a secco? è controllato. In questo modo ti assicuri che eventuali errori non danneggino il tuo sito e possano essere corretti in anticipo
  8. Premi il tasto Esegui ricerca/sostituisci

Se tutto va come previsto, il test dimostrerà che la tua ricerca e sostituzione avrà successo e puoi eseguirla per davvero.

WordPress SSL e HTTPS

Reindirizzamento da HTTP a HTTPS

Ora, questo dovrebbe aver risolto i problemi relativi ai contenuti di visualizzazione misti. Tuttavia, probabilmente vorrai comunque assicurarti che il tuo sito sia il più HTTPS possibile per evitare altri problemi. Uno di questi problemi è quando un sito ha un backlink alla versione HTTP del tuo sito, ma in realtà stai eseguendo la nuova versione HTTPS migliorata. Tecnicamente contano come due siti e il loro vecchio collegamento potrebbe risultare non sicuro ad alcuni utenti. Quindi il prossimo passo è controllare le tue Impostazioni – Opzioni generali . Assicurati che l'indirizzo del tuo sito sia impostato su HTTPS. In caso contrario, fallo e premi Salva. (Il sito ti disconnetterà. Va bene.)

WordPress SSL e HTTPS

Dopodiché, dovrai entrare nel tuo client FTP e aprire il tuo file .htaccess . Si troverà nella directory principale per l'installazione di WordPress.

WordPress SSL e HTTPS

Dovrai scaricare una copia di questo come backup, quindi aprirlo nel tuo editor di codice preferito (il mio è Sublime Text). All'inizio del file ( non tra i tag # BEGIN/END WordPress ), aggiungi il seguente codice. (Grazie a Dreamhost per il codice stesso.)

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

WordPress SSL e HTTPS

Ciò reindirizzerà i tuoi vecchi URL HTTP alle versioni HTTPS man mano che il tuo sito web viene caricato. Nota che nel codice che stai inserendo [L, R=301] , questo è un reindirizzamento 301 permanente attraverso il file .htaccess . Non avrai bisogno di un plugin di reindirizzamento 301 se lo fai. Almeno per il dominio primario.

Ricordi quando ho detto che contano come due siti? Questo lo risolve. Hai dato al nuovo sito HTTPS di WordPress tutto il succo di collegamento e il ranking di ricerca che aveva il tuo sito HTTP. Ora, assicurati di tenerlo dicendo a Big Daddy G (questo è il mio soprannome per Google in questi giorni) che ti sei trasferito in un luogo più sicuro. Ora è il momento di caricare Google Search Console.

Anche se hai già la versione HTTP del tuo sito registrata con Google Search Console, aggiungi il nuovo sito HTTPS di WordPress come nuova proprietà.

WordPress SSL e HTTPS

La Search Console visualizzerà un modale che richiede l' URL completo del sito. Qui è dove devi assicurarti di inserire la versione HTTPS. Nota che anche il modale ti dice che sono proprietà separate, solo per essere consapevole di quanto sia importante questo passaggio.

WordPress SSL e HTTPS

Quindi seguirai il processo di verifica della proprietà come di consueto. Quando avrai finito, Google saprà che hai bloccato il tuo sito da occhi indiscreti.

WordPress SSL e HTTPS

Dopo aver verificato con Google e aver configurato la Search Console con la tua nuova proprietà, benvenuto nel tuo nuovo sito HTTPS di WordPress. Dovresti essere libero e privo di errori che puoi gestire da solo.

Errori SSL di WordPress con plugin e temi

Se hai ancora errori a questo punto, ci sono buone probabilità che sia fuori dalle tue mani. O un plugin attivo o il tuo tema è il colpevole più probabile. Per vedere quale potrebbe essere, fai clic con il pulsante destro del mouse sulla tua pagina e seleziona Ispeziona dal menu. Puoi anche premere CTRL-SHIFT-I per aprire gli strumenti di sviluppo. Guardati intorno finché non vedi la scheda denominata Console . Se ci sono errori, li vedrai evidenziati in rosso.

WordPress SSL e HTTPS

Osservando gli errori, sarai in grado di vedere di che tipo sono. Se sono presenti contenuti etichettati come Contenuti misti , puoi guardare l'URL del file fornito per vedere quale parte della tua installazione è responsabile. Puoi facilmente identificarlo. Sarà il tuo tema o un plugin dall'output dell'errore.

Ora, poiché sai cosa sta causando l'errore. La cosa migliore che puoi fare è segnalarlo al plugin o all'autore del tema. Molti hanno forum di supporto o team di chat dal vivo proprio per questo motivo. Ti consiglio di segnalarlo agli autori per un paio di motivi.

Il primo è che pasticciare con i plugin e i file dei temi può diventare piuttosto spiacevole. Soprattutto se non sei uno sviluppatore tu stesso. Mentre puoi modificare i file del tema molto più facilmente grazie ai temi figlio, hai ancora la possibilità di rompere qualcosa di importante di cui potresti non essere a conoscenza. E quando si tratta di plug-in ... beh, non suggeriamo mai di frugare nei file dei plug-in. A volte può diventare ancora più cattivo dei temi.

La seconda ragione è che non sei solo in questo problema. Lo avete. Ce l'hanno anche altre persone. È così che funzionano queste cose. Quindi lo sviluppatore deve saperlo e fornire una correzione tramite un aggiornamento. Quindi non solo ti sei aiutato con un problema, hai contribuito al bene più grande e puoi sentirti dannatamente bene con te stesso.

Avvisi di certificato non valido

Occasionalmente, un utente potrebbe dirti che il tuo sito mostra un certificato non valido o un certificato scaduto. Questo non è un grosso problema. È una soluzione facile. In generale, per correggere un certificato scaduto (o rinnovarne uno), è sufficiente seguire i passaggi nella sezione sopra intitolata "Installa il tuo certificato SSL gratuito dal tuo account host (supportato)". Nella maggior parte dei casi, funzionerà. In caso contrario, assicurati di installare il certificato con caratteri jolly perché potresti ricevere l'errore a causa di un nome di dominio non corrispondente.

WordPress SSL e HTTPS

Se non funziona, contatta il tuo host. Come ho detto prima, sono personalmente su SiteGround. E quando ho riscontrato questo problema con il mio SSL che non si rinnovava automaticamente, il team di supporto l'ha risolto entro mezz'ora. Questo ovviamente cambierà da host a host, ma vogliono il tuo sito online quasi quanto te.

Errore "Troppi reindirizzamenti"

E nel caso in cui il reindirizzamento 301 nel tuo file .htaccess non lo tenga a bada (dovrebbe), potresti occasionalmente ricevere l'errore in cui il tuo sito si blocca in un ciclo infinito tra il tuo sito HTTP e il tuo sito HTTPS. Fortunatamente, questa è una soluzione facile quasi quanto il certificato non valido. Devi solo aprire il tuo client FTP e trovare il tuo file wp-config.php nella stessa cartella in cui si trovava il tuo .htaccess . Apri anche questo nel tuo editor di codice preferito. Aggiungi il seguente codice in fondo al file:

/** Prevent Too Many Redirects Loop **/
define('WP_HOME','https://mywebsite.com');
define('WP_SITEURL','https://mywebsite.com');
$_SERVER['HTTPS'] = 'on';

WordPress HTTPS e SSL

Salvalo e caricalo di nuovo sul server. Il tuo sito dovrebbe ora fermarsi dove dovrebbe.

Concludendo con WordPress HTTPS e SSL

So che è molto da accettare. Ma WordPress HTTPS è davvero importante per la redditività del tuo sito in futuro. Gli utenti si fidano di più di te. E forse, cosa ancora più importante, anche Google si fiderà di più di te. Ora sei pronto per correggere errori di contenuto misto, gestire la scadenza e il rinnovo del certificato SSL, modificare i tuoi file .htaccess e wp-config.php e persino smanettare con il database del tuo sito. A questo punto, hai bloccato il tuo sito. Quando qualcosa si rompe con l'SSL di WordPress, puoi risolverlo. Datti una pacca sulla spalla, vai a bere qualcosa e riposa bene sapendo che il tuo sito è sano e salvo.

Quali problemi SSL di WordPress hai avuto in passato e come li hai risolti?

Immagine in primo piano dell'articolo di supercaps / shutterstock.com