Modulo 9 · 9.5
Migrare un sito WordPress
Modulo 9: Email, posizionamento (SEO), GDPR, manutenzione e migrazione · Tempo di lettura: 10 minuti
Obiettivo della lezione: al termine di questa lezione saprà migrare un sito web WordPress su un altro hosting o su un altro dominio senza interruzioni.
Concetti chiave: migrazione su un altro hosting, migrazione su un altro dominio, importazione tramite installer, plugin di migrazione, migrazione manuale, cerca e sostituisci, test prima del cambio DNS, file hosts, TTL, blocco dei contenuti, ultima sincronizzazione, controlli dopo il cambio, cambio di indirizzo in Search Console
Due tipi di migrazione
Esistono due tipi di migrazione, e sono diversi tra loro:
- Verso un altro hosting, stesso dominio. Il sito web passa dal server A al server B; l'indirizzo resta
https://example.com. Il DNS viene modificato alla fine. Nel database non deve cambiare nulla. - Verso un altro dominio. Il sito web passa da
example.comaexample.net(sullo stesso hosting o su un altro). Tutti gli indirizzi nel database cambiano e il vecchio dominio deve effettuare un reindirizzamento.
A volte si fanno entrambe le cose insieme. In tal caso è preferibile separarle: prima la migrazione sul nuovo hosting, solo dopo il cambio di dominio. Così, in caso di problemi, saprà quale passaggio li ha causati.
E non dimentichi ciò che si trova accanto a WordPress: email sul dominio, record DNS, cronjob, altri siti web nello stesso pacchetto. Questi non migrano automaticamente insieme al sito (corso DNS, lezione 6.3).
Tre modi per trasferire il sito web
| Metodo | Come | Attenzione |
|---|---|---|
| Importazione tramite installer | Molti installer (Installatron, Softaculous) possono prelevare un sito web da un altro server con i dati FTP o SFTP del vecchio hosting | Rapido, e il sito web compare subito nel Suo installer (lezione 2.2) |
| Plugin di migrazione | Un plugin crea sul vecchio sito un pacchetto (file e database) e lo installa sul nuovo, spesso convertendo anche gli indirizzi | Alcune versioni gratuite hanno una dimensione massima; caricamenti di grandi dimensioni possono andare in timeout |
| Manualmente | Copiare i file (SFTP o zip), esportare e importare il database, modificare wp-config.php, con un nuovo dominio eseguire cerca e sostituisci | Più lavoro, ma vede ogni passaggio e funziona sempre |
La procedura manuale è la seguente:
- File: scarichi l'intera cartella web (oppure ne crei uno zip tramite Gestione file) e la carichi nella cartella web del nuovo hosting.
- Database: lo esporti sul vecchio hosting (phpMyAdmin o
wp db export), crei sul nuovo un database vuoto con un proprio utente (lezione 2.3) e lo importi (lezione 8.2). - wp-config.php: inserisca il nuovo nome del database, l'utente, la password e l'host. Controlli il prefisso delle tabelle.
- Nuovo dominio? Crei prima un backup del database (oppure utilizzi l'esportazione del passaggio 2). Poi cerchi e sostituisca gli indirizzi con uno strumento che gestisca i dati serializzati (lezione 3.2): prima la prova con
--dry-run, poi l'esecuzione reale.--skip-columns=guidlascia intatti gli identificativi fissi degli articoli e, senza--all-tables, WP-CLI si limita alle tabelle di WordPress.
wp search-replace 'https://example.com' 'https://example.net' --skip-columns=guid --dry-run
wp search-replace 'https://example.com' 'https://example.net' --skip-columns=guid- Certificato sul nuovo hosting (non appena il DNS punta al nuovo server, o prima se il provider lo consente).
Alcuni provider di hosting migrano il Suo sito web per Lei, gratuitamente o a pagamento; anche WebOké offre questo servizio. In tal caso chieda quali passaggi di questa lezione eseguono e quali deve verificare Lei stesso.
Test prima del cambio DNS
Il principio più importante di una migrazione senza interruzioni: il nuovo sito web funziona già prima che qualcuno lo visiti. Lo testa sul nuovo hosting mentre il DNS punta ancora al vecchio. Due modi (lezione 2.1):
- Il file hosts sul Suo computer: vi inserisca l'indirizzo IP del nuovo server accanto al Suo dominio. Solo il Suo computer raggiungerà così il nuovo sito web. Il certificato a volte non è ancora presente; accetti l'avviso solo per questo test.
- Un indirizzo di test o un'anteprima del Suo nuovo provider, che mostra il Suo sito web con il dominio reale senza modificare il DNS (presso WebOké "Testare il sito web prima del trasferimento").
Esegua la checklist della lezione 8.2: pagine, immagini, accesso, moduli, negozio, permalink.
Pianificare il cambio
Alcuni giorni prima:
- Abbassi il TTL dei record che intende modificare (A, AAAA, www), ad esempio a 300 secondi, in modo che il cambio diventi visibile ovunque rapidamente (corso DNS, lezione 6.1). Lo faccia con un anticipo almeno pari al vecchio TTL.
- Crei un backup del vecchio sito web (lezione 8.1) e lo conservi al di fuori di entrambi i provider.
- Prepari la posta se migra anch'essa: creare le caselle, trasferire i messaggi, preparare i record MX (corso DNS, lezione 6.3).
Il giorno del cambio:
- Blocco dei contenuti: da questo momento non si modifica più nulla sul vecchio sito web. Per un negozio online: scelga un momento tranquillo e metta temporaneamente il negozio in manutenzione, altrimenti arriveranno sul vecchio sito ordini che andranno persi.
- Ultima sincronizzazione: trasferisca ancora una volta il database (e i nuovi caricamenti) dal vecchio sito al nuovo, in modo che contenga tutto ciò che è stato aggiunto negli ultimi giorni.
- Modificare il DNS: record A e AAAA (e www) verso il nuovo indirizzo IP. Rimuova un eventuale vecchio record AAAA (lezione 2.1).
- Richiedere il certificato sul nuovo hosting non appena il DNS punta al nuovo server.
- Verificare con l'esercizio di questa lezione e con la checklist.
In seguito:
- Mantenga attivo il vecchio hosting ancora per qualche giorno (con il sito in manutenzione o in sola lettura), per i visitatori che hanno ancora il vecchio indirizzo nella cache e come soluzione di ripiego.
- Controlli i permalink (salvare una volta in Impostazioni > Permalink se le pagine restituiscono un 404), la cache (svuotarla), i cronjob e WP-Cron (lezione 6.3) e la posta inviata dal sito (lezione 9.1: SPF deve ora indicare il nuovo server).
- Riporti il TTL a un valore più alto.
- Solo dopo una o due settimane: disdica il vecchio hosting, dopo aver scaricato un ultimo backup.
Con un nuovo dominio: reindirizzamento
Se migra su un altro dominio, il vecchio dominio deve continuare a esistere ed effettuare il reindirizzamento: ogni vecchio indirizzo con un 301 verso lo stesso percorso sul nuovo dominio (https://example.com/contact/ verso https://example.net/contact/), non tutto verso la homepage. In questo modo conserva i visitatori provenienti da vecchi link e la Sua posizione nei motori di ricerca (lezione 9.2).
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteRule ^(.*)$ https://example.net/$1 [R=301,L]Mantenga il vecchio dominio (con un certificato) ancora per anni. Comunichi la migrazione in Google Search Console con la funzione di cambio di indirizzo e invii la nuova sitemap.
Riepilogo
- La migrazione su un altro hosting (stesso dominio) e quella su un altro dominio sono lavori diversi; li separi se deve fare entrambe le cose.
- Trasferisca il sito web con un'importazione tramite installer, un plugin di migrazione o manualmente (file, database, wp-config.php e, con un nuovo dominio, cerca e sostituisci).
- Testi il nuovo sito web prima del cambio DNS tramite il file hosts o un indirizzo di test.
- Abbassi prima il TTL, applichi un blocco dei contenuti, sincronizzi un'ultima volta, modifichi il DNS e controlli permalink, cache, cron e posta.
- Con un nuovo dominio: ogni vecchio indirizzo con un 301 verso lo stesso percorso sul nuovo dominio e un cambio di indirizzo in Search Console.
Quiz
Esercizio
Esercizio A9.5: La migrazione è riuscita? Dopo una migrazione inserisca il Suo dominio, l'indirizzo IP (o il nome del server) del nuovo hosting e, in caso di cambio di dominio, anche il vecchio dominio. Il programma verifica: il dominio senza www e www (A e AAAA) puntano al nuovo server, il certificato è valido per entrambi i nomi, il riferimento REST del sito punta al dominio corretto (siteurl convertito correttamente), il vecchio dominio non compare più nei link e nelle risorse della homepage e il vecchio dominio (se indicato) effettua un reindirizzamento 301 verso lo stesso percorso sul nuovo?
Esercizio D9.5: Il Suo piano di migrazione. Scriva un piano per la migrazione del Suo sito web (anche se al momento non la prevede): quale tipo di migrazione, quale metodo di trasferimento, cosa deve migrare oltre a WordPress (posta, record DNS, cronjob), come esegue il test prima del cambio, la tempistica (giorni prima, il giorno stesso, i giorni successivi) indicando per ogni passaggio chi se ne occupa, e come tornare indietro se qualcosa va storto. Spunti la casella per confermare di aver verificato il TTL attuale del Suo record A e lo annoti.
Esercizio D9.5: Il Suo piano di migrazione
Questo esercizio lo svolge da sé; nessuno lo verifica. Spunti ciò che ha fatto e segni l'esercizio come completato.
Abbassi il TTL qualche giorno prima, concordi un blocco dei contenuti con una sincronizzazione finale appena prima del passaggio e non dimentichi la posta e gli altri record DNS.
Le Sue spunte e note restano solo in questo browser; non le inviamo da nessuna parte. Se ha effettuato l'accesso, conserviamo in I miei corsi solo il fatto che ha svolto l'esercizio.
Per approfondire
Questi articoli descrivono i passaggi nei pannelli di WebOké; in altri pannelli funzionano in modo simile.
- Importare un sito web esistente in Installatron
- Guida DirectAdmin 13.4: Importare un sito web esistente in Installatron
- La mia posizione web non funziona dopo il caricamento o il trasferimento
- Trasferire insieme dominio, sito web ed e-mail senza interruzioni: la guida passo passo
- Guida DirectAdmin 18.8: Testare il mio sito web prima che il dominio sia trasferito
- Guida WebOké 14.2: Testare il sito web prima di un trasferimento
- Cercare e sostituire nel database di WordPress
- Guida DirectAdmin 12.4: Esportare un database
- Corso gratuito DNS 6.3: Il DNS durante un trasferimento
- Migrare WordPress (developer.wordpress.org, Inglese): https://developer.wordpress.org/advanced-administration/upgrade/migrating/
- Trasferire WordPress manualmente: file, database e wp-config.php
