Gestire un sito basato su WordPress può mettervi nella situazione di dover cambiare il servizio di hosting utilizzato. Questo può accadere per decine di motivi differenti, tra cui:

  • Cessazione/upgrade del servizio esistente
  • Migrazione verso provider più performante/conveniente
  • Cambio di dominio o di percorso della URL

In ogni caso, sarete costretti a effettuare una procedura di migrazione del sito WordPress. Detta così, potrebbe sembrare un’attività piuttosto complessa e onerosa. In realtà è sufficiente avere chiari quei cinque o sei passi da seguire, e non avrete troppe complicazioni a ostacolarvi il cammino.

In questo post vi spiegherò quindi come migrare un sito WordPress, presentandovi sia il caso della migrazione del solo hosting, sia quello in cui vi troverete a migrare anche il dominio.

Migrare un hosting WordPress

E’ innanzitutto importante capire da cosa è costituito un sito WordPress, ovvero le componenti architetturali. Le vedete riassunte in questo schema.

wordpress-architettura

Parliamo quindi di:

  • Un Web-Server Apache, che fornisce le pagine richieste via HTTP dal browser dell’utente. Esso contiene anche lo spazio FTP dov’è depositata la cartella d’installazione del vostro sito WordPress
  • Un App-Server PHP, di solito condiviso sulla stessa macchina Apache, in grado d’interpretare il coding delle pagine del sito
  • Un DB MySQL, che contiene tutto l’archivio e la configurazione WordPress del sito

Ora che abbiamo chiarito com’è strutturato un sito WordPress, possiamo passare a descrivere i passi puntuali da seguire per migrarlo. Si tratterà essenzialmente di copiare i file e il DB. Vi consiglio, per vostra sicurezza, di effettuare un backup dei file e del DB prima di iniziare. Un plugin come WP Backup vi aiuterà, in tal senso.

Copiare cartella WordPress da spazio FTP

Per lo svolgimento di questo primo passaggio vi suggerisco di attrezzarvi con un client FTP, il più noto è sicuramente Filezilla, che vi facilita tutto perché vi permette di muovervi all’interno dello spazio fornito dal vostro hosting provider come se vi trovaste tra le cartelle del vostro computer.

Collegatevi allo spazio FTP usando le credenziali che vi sono state fornite dal provider in fase di attivazione del servizio.

filezilla-login

Una volta collegati, potrete trovarvi di fronte due casistiche:

  1. WordPress è installato direttamente sulla root del vostro spazio FTP (ad es. www.miodominio.it), pertanto dovrete selezionare tutti i file e poi copiarveli in locale.
  2. WordPress è installato in una sottocartella rispetto alla root (ad es. www.miodominio.it/wordpress), in tal caso basterà selezionare solo la suddetta folder e poi copiarvela in locale.

wordpress-filezilla

Esportare DB MySQL

L’altro passaggio preliminare è quello di esportare la vostra attuale base-dati. La maggior parte degli hosting provider vi mettono a disposizione, per gestire il vostro DB MYSQL, il comodo tool phpMyAdmin. Accedete, e cliccate, sul browsertree posto alla vostra sinistra, sul nome del DB del vostro servizio. A quel punto, tramite il pulsante Esporta, potrete procedere con l’esportazione completa dello schema-dati, che verrà archiviato in un unico file SQL.

wordpress-phpmyadmin

Questo file non deve essere modificato a meno che non vi siano condizioni particolari, che affronteremo più in basso.

Aggiornare configurazione del file wp-config.php

Fra i file che abbiamo scaricato dal servizio FTP, dedicate ora la vostra attenzione al wp-config.php, che normalmente si trova nella cartella principale in cui sono salvati tutti i file di WordPress. Una volta individuato, apritelo con un editor di testo per linguaggi di programmazione, come il Notepad di Windows o qualsiasi altro, purché si eviti di usare Word e altri programmi di videoscrittura, che potrebbero inserire caratteri sporchi nocivi tra una voce e l’altra. Scorrere quanto visualizzato e trovare la dicitura ***Il nome del database di WordPress***. Da qui, per le sette righe successive, bisognerà cambiare le informazioni presenti. Nello specifico, cercare la dicitura:

  • define(‘DB_NAME’, ‘vecchio_nome _db’)  al posto di vecchio_nome _db, digitare  il nuovo nome del database che si trova associato al nuovo piano hosting di destinazione;
  • define(‘DB_USER’, ‘vecchio_nome_utente_db’)  al posto di vecchio_nome_utente_db, digitare il nuovo nome utente del database che si trova associato al nuovo piano hosting di destinazione;
  • define(‘DB_PASSWORD’, ‘vecchio_password’) – al posto di vecchia_password, digitare la nuova password del database che si trova associato al nuovo piano hosting di destinazione;
  • define(‘DB_HOST’, ‘vecchio_host’)  al posto di vecchio_host, digitare il nuovo indirizzo IP o host del database che si trova associato al nuovo piano hosting di destinazione.

Caricare file su nuovo spazio FTP

Riprendete in mano il vostro Filezilla, ma stavolta collegatevi al vostro nuovo spazio FTP. Una volta dentro, copiare i file di backup salvati in locale sul nuovo FTP. Per trasferire i file, selezionarli nel riquadro di sinistra e spostarli a destra con un drag&drop.

wordpress-filezilla-upload

Importare file su nuovo DB MySQL

Autenticarsi al servizio phpMyAdmin del nuovo hosting e accedere al database associato. Una volta dentro, scegliere dalla colonna di sinistra il database su cui importare il vecchio DB WordPress e cliccarvi sopra con il tasto sinistro del mouse. Cliccare su Importa, scegliere il file dal PC con un clic su Scegli file e confermare con un clic su Esegui. Attendere che l’importazione abbia termine.

La vostra migrazione è conclusa.

Migrare dominio e hosting WordPress

Nel caso in cui oltre alla migrazione dell’hosting vi dobbiate occupare anche di un cambio di dominio (ad es. da www.vecchiodominio.it a www.nuovodominio.it), oppure di un cambio di percorso WordPress (ad es. da www.miodominio.it a www.miodominio.it/wordpress), la procedura che vi ho illustrato sopra va arricchita del seguente passaggio.

Prima di importare il file SQL sul nuovo DB, editatelo utilizzando il solito Notepad oppure Textedit, e trovate al suo interno la tabella wp_options (la principale tabella di configurazione WordPress), in particolare le righe chiamate siteurl e home, che corrispondono rispettivamente all’indirizzo dove risiedono i file di WordPress, e all’indirizzo che si desidera che gli utenti digitino per raggiungere il vostro sito.

Aggiornando questi due parametri, siete a posto. Vi rimando comunque alla pagina ufficiale di supporto WordPress dove vengono dettagliate varie procedure di aggiornamento possibili, alcune anche con specifici comandi di DEFINE sul wp-config.php.

Migrare utilizzando un plugin

Facile, vero? Tuttavia, non a tutti può risultare comodo dover smanettare con Filezilla e phpMyAdmin, e le complicazioni sono sempre dietro l’angolo, prima fra tutte le dimensioni del sito stesso.

Poiché su WordPress la community è sempre molto attiva e produttiva, è stato sviluppato un plugin, chiamato Duplicator, che dovrebbe automatizzare al massimo l’intero processo. Ne esiste anche una versione Pro, che garantisce backup schedulati, utilizzo del Cloud e altre features professionali. Come in ogni caso, valutate voi se ne vale la pena: automatizzare troppo può farvi passare dei brutti cinque minuti, se la vostra situazione di migrazione è un caso particolare.