Impostare WordPress in HTTPS

Se hai intenzione di convertire il tuo sito in WordPress da HTTP a HTTPS, in questo articolo troverai la funzione che ti permetterà di impostare tutti i link del sito in HTTPS.

Ormai tutti siti web utilizzano HTTPS per garantire la sicurezza del visitatore, quindi considerando che WordPress gira in più della metà della rete di internet, è necessario impostare anche il nostro WordPress in HTTPS.

Per poter impostare la navigazione sicura sul vostro WordPress potete utilizzare diverse tecniche, in questo tutorial utilizzeremo una funzione php che effettua una verifica sul file .htaccess contenuto nella root di WordPress.

Requisiti per impostare HTTPS in WordPress

Assicuriamoci di avere i requisiti per continuare:

  • Accesso FTP & Accesso MySql o Cpanel o Plesk.
  • Certificato SSL attivo sullo spazio web (Let’s Encrypt ormai è gratuito in quasi tutti i provider).
  • 5 minuti di lettura per la totale impostazione di WordPress in HTTPS.

Il certificato SSL Let’s Encrypt è facilmente configurabile dai pannelli PLESK o CPanel, altre volte invece il provider prevede l’attivazione dal sito dello stesso (Es: Aruba).

Let's Encrypt per WordPress

Funzione per impostare WordPress in HTTPS

Tramite file manager (Aspetto > Editor) o FTP rechiamoci nella root del sito in WordPress (solitamente httpdocs), ora entriamo in wp-content/themes/*tuotemachild*/functions.php.

Attenzione! Stai modificando un file che potrebbe interrompere istantaneamente  il funzionamento di WordPress.

Adesso inseriamo questo codice (copia ed incolla senza *):

*
// Redirect WP https – https://www.andreadegiovine.it/1499/wordpress-https-senza-plugin-5min.html thanks to “[WP] WordPress Italia”
function verifica_htaccess_https() {
$htaccess = get_home_path().”.htaccess”;
if( strpos(file_get_contents($htaccess),’# BEGIN RedirectHTTPS’) === false) {
$redirect_https = array();
$redirect_https[] = “”;
$redirect_https[] = “RewriteCond %{HTTPS} !=on”;
$redirect_https[] = “RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]”;
$redirect_https[] = “”;
insert_with_markers($htaccess, “RedirectHTTPS”, $redirect_https);
}
}
add_action(‘admin_init’,’verifica_htaccess_https’);
*

Questa funzione verifica il contenuto del file .htaccess ed in assenza del tag che dovrebbe racchiudere un set di regole prestabilite, tenta l’inserimento di tag e regole nel file.

Se utilizzi plugin che scrivono/leggono sul file .htaccess o regole custom potrebbero verificarsi conflitti, in quel caso apri il file .htaccess contenuto nella root della tua installazione ed elimina il contenuto tra “# BEGIN RedirectHTTPS” e “# END RedirectHTTPS“.

Funzione HTTPS WordPress

Impostare tutti i link e le immagini WordPress in HTTPS

Perfetto, come vedi adesso se provi a raggiungere un link del tuo sito utilizzando http:// anziché https:// verrai automaticamente reindirizzato alla versione protetta.

Come fare con le immagini e i link inseriti nei post e nelle pagine prima del passaggio di WordPress a HTTPS? Semplice, anzi semplicissimo!

***Consiglio di fare un backup del database prima di continuare***

Accedi al tuo database MySql (solitamente tramite phpMyAdmin o simili), seleziona il database dove è installato WordPress e posizionati sulla pagina “SQL” (su phpMyAdmin la trovi nei tab in alto accanto a “Struttura”). Adesso avrai davanti un area di testo dove dovrai incollare questa funzione (copia ed incolla senza *):

*
UPDATE wp_options SET option_value = replace(option_value, ‘http://www.tuositoweb.it‘, ‘https://www.tuositoweb.it‘) WHERE option_name = ‘home’ OR option_name = ‘siteurl’;

UPDATE wp_posts SET guid = replace(guid, ‘http://www.tuositoweb.it‘, ‘https://www.tuositoweb.it‘);

UPDATE wp_posts SET post_content = replace(post_content, ‘http://www.tuositoweb.it‘, ‘https://www.tuositoweb.it‘);

UPDATE wp_postmeta SET meta_value = replace(meta_value,’http://www.tuositoweb.it‘, ‘https://www.tuositoweb.it‘);
*

Sostituisci le parti in grassetto “wp_” utilizzando il prefisso che hanno le tabelle della tua installazione, e “www.tuositoweb.it” con il link del tuo sito (ricorda di non inserire il “/” finale nel link).

Ricorda: Effettuare operazioni nelle tabelle di WordPress potrebbe causare problemi come la perdita di impostazioni o dati.

Se esegui questa operazione nel modo giusto otterrai una risposta positiva da SQL contenente il numero di sostituzioni fatte.

Abbiamo finito! Adesso accedi a wp-admin e la funzione effettuerà una verifica sul file .htaccess contenuto nella root del tuo CMS, puoi anche eliminare la funzione dopo aver verificato che tutto funzioni.