[I backup in cloud sono appena diventati più semplici: Duplicator Cloud elimina l'archiviazione di terze parti
[I backup in cloud sono appena diventati più semplici: Duplicator Cloud elimina l'archiviazione di terze parti
John Turner
John Turner
Avete trascorso ore a prepararvi per quella che dovrebbe essere una semplice migrazione del sito. I file di backup sono pronti, il nuovo account di hosting è stato configurato e siete sicuri che tutto filerà liscio.
Poi si ripristina il backup e si visita il sito. Schermata bianca. Non viene caricato nulla.
Controllate i log degli errori e vedete qualcosa su "Errore fatale" e "Versione PHP". Il vostro stomaco crolla perché vi rendete conto di cosa è successo: il vostro backup è stato creato con una versione PHP precedente, ma il vostro nuovo server ne esegue una più recente.
Quando il backup è stato creato su una versione PHP precedente, ma il server di destinazione ne esegue una più recente, il codice che prima funzionava perfettamente può improvvisamente rompersi.
I plugin smettono di funzionare. I temi lanciano errori. L'intero sito può diventare inaccessibile.
Vi mostrerò due metodi affidabili per risolvere questo problema. Entrambi gli approcci funzionano, ma servono a situazioni diverse, a seconda di quanto sia critico il vostro sito e di quanto siate a vostro agio con gli ambienti di test.
I disallineamenti di versione di PHP si verificano per quattro motivi principali ed è probabile che in questo momento ci si trovi di fronte a una di queste situazioni.
1. Migrazione a un nuovo host web
Il vostro vecchio host potrebbe aver utilizzato PHP 7.4, ma il vostro nuovo host ha come default PHP 8.1 o 8.2. La maggior parte delle società di hosting configura automaticamente i nuovi account con l'ultima versione PHP supportata.
2. L'host attuale richiede un aggiornamento della versione di PHP
I provider di hosting eliminano regolarmente le vecchie versioni di PHP per motivi di sicurezza. Potreste ricevere un'e-mail con scritto "Il supporto di PHP 7.4 termina tra 60 giorni", il che significa che tutti i vostri backup precedenti avranno una versione PHP obsoleta.
3. Passare dallo sviluppo locale a un server live
L'ambiente di sviluppo locale potrebbe funzionare con una versione PHP obsoleta. Quando si è pronti ad andare in onda, l'account di hosting esegue una versione molto più recente.
4. Ripristino di un backup molto vecchio su un server moderno
Forse state recuperando da un disastro utilizzando un backup vecchio di sei mesi o due anni. È probabile che l'ambiente del server sia stato aggiornato più volte da quando è stato creato il backup.
In tutti i casi, il problema principale è lo stesso: il codice che funzionava perfettamente con la vecchia versione di PHP si interrompe improvvisamente con la nuova.
Il risultato più comune di un errore di versione di PHP è il White Screen of Death (WSOD). Il sito viene caricato, ma tutto ciò che si vede è una pagina bianca. Nessun contenuto, nessuna navigazione, niente.
Ciò che sta accadendo è dovuto alle funzioni deprecate. Quando PHP viene aggiornato, i vecchi comandi e funzioni vengono rimossi.
Altri problemi sono i plugin e i temi incompatibili. Il nucleo di WordPress è abbastanza compatibile con le versioni precedenti, ma i plugin, soprattutto quelli più vecchi o che non sono stati aggiornati di recente, possono rompersi completamente con le versioni PHP più recenti.
Ecco due metodi collaudati per gestire questa situazione.
Il primo è più diretto, ma comporta alcuni rischi. Il secondo è più sicuro, ma richiede più tempo per l'installazione.
Se si sta cercando di spostare un backup su un server con una versione PHP più aggiornata, si potrebbe aggiornare temporaneamente il PHP del nuovo server. Caricare il backup in un ambiente compatibile, quindi aggiornare nuovamente il PHP del server.
Questo è l'approccio più semplice quando si ha bisogno di far funzionare rapidamente un sito.
La modalità di declassamento della versione PHP del nuovo sito web dipende dal suo host.
Per gli utenti di DreamHost, andare su Gestione siti web " Versione PHP.

Quindi, selezionare la versione di PHP che corrisponde al backup. Cliccare su Cambia versione PHP.

Per Bluehost, questo si trova nelle impostazioni del sito.

Individuare la sezione Versione PHP e modificarla.

Per informazioni più dettagliate sulla modifica della versione PHP di un sito, leggete il nostro tutorial!
Ora ripristinate il backup sul server. Poiché entrambi gli ambienti corrispondono, la migrazione dovrebbe essere completata senza errori.
La funzione di importazione con trascinamento di Duplicator Prorende questa fase molto più affidabile. Invece di dover caricare manualmente i file e importare i database che possono andare in timeout, è sufficiente trascinare il file dell'archivio di backup nella pagina di importazione.

Una volta che il sito è stato ripristinato e funziona, è possibile aggiornarlo per farlo funzionare con la nuova versione di PHP.
Accedere all'amministrazione di WordPress e disattivare tutti i plugin. Passare a un tema predefinito di WordPress (come Twenty Twenty-Five o Twenty Twenty-Four). Aggiornare il nucleo di WordPress all'ultima versione.
Tornate al vostro pannello di hosting e aggiornate la versione di PHP.
Aggiornare tutti i plugin e il tema alle versioni più recenti. Riattivate i plugin uno alla volta, verificando che il sito funzioni ancora dopo ognuno di essi.
Una volta che tutto è aggiornato e funziona correttamente, creare un nuovo backup. In questo modo si ottiene un pacchetto pulito e compatibile con le moderne versioni di PHP per le migrazioni future.
Questo metodo è più sicuro per i siti web critici, perché si eseguono tutti i test offline prima di toccare l'ambiente live.
È necessario configurare un ambiente di sviluppo locale. Ecco alcune esercitazioni approfondite sull'installazione dei software locali più diffusi:
Per questo post, utilizzerò Local di Flywheel. Questo strumento consente di creare siti WordPress sul proprio computer con qualsiasi versione di PHP necessaria.
In LocalWP, create un nuovo sito WordPress vuoto e impostate la sua versione PHP in modo che corrisponda al vecchio backup. Se il backup proviene da PHP 7.4, configurare il sito locale in modo che utilizzi PHP 7.4.

Continuare a configurare il sito locale. Dopo di che, premere il pulsante WP Admin per accedere.

Installare Duplicator Pro e importare il vecchio backup nel sito. Una volta ripristinato e funzionante in locale, aggiornate tutto: il nucleo di WordPress, tutti i plugin e il tema.
Ora cambiare la versione PHP del sito locale con quella desiderata. Su LocalWP, aprire i dettagli del sito nell'applicazione e trovare l'impostazione corretta della versione PHP. Premete Applica.

Testate tutto a fondo. Cliccate sul vostro sito, testate i moduli di contatto e verificate che tutte le pagine vengano caricate correttamente.
Una volta che il sito locale funziona perfettamente con la nuova versione di PHP, creare un nuovo backup di questo sito locale aggiornato.

Questo nuovo backup può essere migrato sul server live senza alcun conflitto di versioni PHP. La migrazione dovrebbe avvenire senza problemi, poiché tutto è già compatibile.
Anche dopo aver seguito questi metodi, il vostro sito potrebbe comunque rompersi. Quando ciò accade, il colpevole è solitamente un plugin incompatibile.
Il modo più rapido per diagnosticarlo è disattivare tutti i plugin senza accedere all'amministrazione di WordPress. Potete farlo tramite il file manager del vostro hosting o FTP rinominando la cartella plugins in qualcosa come plugins-deactivate.
Questo disattiva immediatamente tutti i plugin.

Se il sito viene caricato dopo aver disabilitato i plugin, significa che uno di essi ha causato il problema. Riattivateli uno per uno fino a trovare il responsabile del problema.
Se il problema non sono i plugin, il tema potrebbe essere incompatibile. Provate a passare a un tema predefinito di WordPress come Twenty Twenty-Five e vedete se l'errore scompare.
Utilizzate l'ultima versione stabile di PHP supportata dal vostro provider di hosting e con la quale tutti i vostri plugin sono compatibili. Controllate la pagina WordPress.org di ogni plugin per vedere quali versioni PHP supportano ufficialmente.

No, Duplicator gestisce lo spostamento di file e database tra i server, mentre PHP è un'impostazione a livello di server controllata dal provider di hosting. Duplicator rende il processo di migrazione affidabile, ma è comunque necessario gestire personalmente l'ambiente PHP.
Controllare la pagina di ogni plugin su wordpress.org. Controllate la data dell'ultimo aggiornamento e le versioni PHP supportate. Se un plugin non è stato aggiornato da oltre un anno, potrebbe avere problemi di compatibilità con PHP. Considerate la possibilità di trovare un'alternativa prima di effettuare l'aggiornamento.
Un downgrade temporaneo per una migrazione va bene, ma non lasciate il vostro sito su una vecchia versione PHP a lungo termine. Le vecchie versioni di PHP presentano vulnerabilità di sicurezza note che non vengono corrette. Completate il processo di migrazione e aggiornamento il più rapidamente possibile.
Per risolvere i disallineamenti di versione di PHP è necessario un approccio metodico. O si abbassa il server di destinazione per farlo corrispondere alla versione PHP del backup, oppure si aggiorna il backup per farlo funzionare con l'ambiente del server più recente.
Entrambe le strategie funzionano in modo affidabile se si seguono attentamente i passaggi. Il metodo del downgrade-migrazione-aggiornamento consente di ottenere risultati più rapidamente. L'approccio del test locale richiede più tempo, ma elimina il rischio per i siti critici.
La migrazione in sé non deve essere complicata. Duplicator Pro gestisce i dettagli tecnici dello spostamento dei file e dei database, in modo che possiate concentrarvi sulla gestione del processo di compatibilità PHP. Provatelo oggi stesso!
Con il giusto approccio, una mancata corrispondenza della versione di PHP diventa solo un altro passo nella lista di controllo della migrazione, piuttosto che una crisi che interrompe il vostro sito.
Mentre siete qui, penso che vi piaceranno queste risorse WordPress selezionate a mano:
Divulgazione: I nostri contenuti sono sostenuti dai lettori. Ciò significa che se cliccate su alcuni dei nostri link, potremmo guadagnare una commissione. Raccomandiamo solo prodotti che riteniamo possano apportare un valore aggiunto ai nostri lettori.