WordPress

Il trasloco di WordPress inizia prima della copia

Il trasferimento dei file è il pomeriggio facile. La migrazione è l’inventario che hai scritto il giorno prima che qualcuno toccasse il DNS.

The WordPress move starts before the copy

La copia è raramente ciò che rompe un trasferimento WordPress. Ciò che lo rompe è quello che nessuno ha scritto: un cron, un webhook, un plugin che ha inciso il vecchio hostname in una riga, una casella che parte ancora dal vecchio server. Tratto l’inventario come la migrazione. Il trasferimento dei file è il pomeriggio facile che viene dopo.

Scrivi il sistema prima di toccarlo

Prima che un file si muova, scrivo una pagina che un estraneo potrebbe usare. Versione di PHP. Dimensione del database. Le righe di cron e le azioni pianificate dentro WordPress, che non sono la stessa lista. Posta: chi invia, attraverso cosa, e se SPF nomina già quell’host. Ogni integrazione che chiama il sito o che il sito chiama. I webhook di pagamento e una sincronizzazione CRM sono le sorprese solite, perché vivono in un’impostazione di plugin che nessuno ha esportato.

Scrivo anche che cosa significa “funzionare” per questo negozio. Il checkout di un prodotto fisico. Il checkout di un prodotto virtuale. L’accesso. Un reset della password. Il modulo di contatto, inclusa la mail che deve arrivare. La ricerca, se il catalogo dipende da quella. Se non so nominare il percorso, non sono pronto a cambiare il DNS.

RigaPerché è qui
PHP, dimensione del database, cache oggettiIl nuovo host può essere «su» e restare comunque il runtime sbagliato.
Cron e azioni pianificateUn job notturno mancato sembra a posto finché il rapporto del mattino è vuoto.
Percorso della postaIl sito può caricarsi mentre ogni mail d’ordine muore sulla macchina nuova.
Webhook e API in uscitaDi solito non sono documentati, e notano prima il nome dell’host.
I cinque percorsi che fanno soldiUn controllo della home non li percorre.

Abbassa il TTL il giorno prima

Imposta il TTL del DNS a 300 secondi il giorno prima del passaggio. Se lo salti e il nuovo host è sbagliato, una parte del pubblico tiene il record vecchio per ore. Non puoi accelerare una cache che non hai accorciato. Preferisco aspettare un giorno apposta che scoprire l’attesa durante un disservizio.

Un URL di staging non è il nome vero

Alzo il server nuovo e ci punto solo la mia macchina, con un’eccezione nel file hosts, mentre il DNS pubblico serve ancora il vecchio host. Poi percorro i percorsi sul nome vero. Un URL di staging nasconde i plugin che hanno salvato il dominio di produzione nel database. Si comportano finché il nome vero non è nella richiesta, che è proprio il momento in cui non vuoi più una sorpresa.

Se il percorso critico non è stato percorso sul nome host vero, la migrazione non è stata provata.

Tieni acceso il vecchio host

Non disdico l’hosting vecchio nella settimana del trasferimento. Resta su, in sola lettura, per almeno due settimane. Costa poco. È l’unico ritorno che non dipende da una copia che non ho ancora dovuto usare. Se il nuovo host si comporta male al terzo giorno, il record vecchio significa ancora qualcosa.

La posta è il controllo che si dimentica

Il sito può sembrare finito mentre ogni mail d’ordine muore sulla macchina nuova. Scrivo l’indirizzo From, il relay e se la porta 25 è anche solo aperta. Su più di un host non lo è, e l’unico percorso che funziona è un relay autenticato sulla 587. SPF ha già un record. Non ne aggiungo un secondo. Due record SPF non si fondono. Diventano entrambi invalidi, e la posta che prima arrivava comincia a sparire la settimana dopo un trasferimento che, per il resto, è andato bene.

Invio una mail d’ordine vera e un reset della password dal nuovo host, a una casella che controllo, prima di chiamare il trasferimento fatto. Una riga di log che dice “sent” non è un messaggio nella casella. Il secondo è il test.

HTTPS sull’apex e su www. Il certificato si rinnova da solo. La posta esce ancora. I cinque percorsi si completano ancora. Poi guardo il registro degli errori per un giorno, non la homepage. La homepage è ciò per cui un monitor ti sta già facendo i complimenti. Il registro è dove un webhook ha cominciato a restituire 404 a un fornitore di pagamenti.

Un trasferimento fatto così è noioso. È proprio quello il punto. Le storie interessanti sulle migrazioni sono quasi tutte la storia di una riga che mancava dall’inventario.