Chi Siamo Area Clienti Promo del Mese Dicono di Noi Portfolio FAQ Blog
Senza categoria

Search and Replace dopo la Migrazione WordPress: URL e Database

· 9 min di lettura

Search and Replace dopo la Migrazione WordPress: URL e Database

La sostituzione degli URL nel database è una delle operazioni più critiche dopo la migrazione di un sito WordPress. Se gli URL non vengono aggiornati correttamente, il sito migrato presenterà link rotti, immagini mancanti, redirect errati e funzionalità compromesse. All-in-One WP Migration gestisce automaticamente questa operazione durante l’importazione, ma comprendere il processo nel dettaglio è fondamentale per risolvere eventuali problemi residui e per gestire situazioni in cui la sostituzione automatica non copre tutti i casi.

Verifica dello stato del database dopo la migrazione

Perché la Sostituzione degli URL è Necessaria

WordPress memorizza gli URL in modo assoluto nel database. Questo significa che ogni riferimento a un’immagine, a un link interno, a un file CSS o a una risorsa del sito contiene l’URL completo, incluso il dominio. Quando migri il sito verso un nuovo dominio o un nuovo percorso, tutti questi riferimenti diventano obsoleti.

Ecco dove WordPress memorizza gli URL nel database:

Il Problema dei Dati Serializzati

Il motivo principale per cui non puoi semplicemente eseguire un “trova e sostituisci” SQL sul database è la serializzazione dei dati. WordPress utilizza la serializzazione PHP per memorizzare strutture dati complesse (array e oggetti) come stringhe di testo nel database.

Un dato serializzato ha un aspetto simile a questo:

a:1:{s:11:"widget_text";s:45:"Visita il nostro sito su https://vecchiosito.it";}

Notate il prefisso s:45: che indica la lunghezza della stringa successiva (45 caratteri). Se sostituite https://vecchiosito.it con https://nuovosito.it senza aggiornare il contatore di lunghezza, la stringa serializzata diventerà corrotta e WordPress non sarà in grado di leggere i dati.

Questo è il motivo per cui sono necessari strumenti specializzati che deserializzano i dati, effettuano la sostituzione e poi riserializzano correttamente, aggiornando tutti i contatori di lunghezza.

Come All-in-One WP Migration Gestisce la Sostituzione

All-in-One WP Migration include un motore di sostituzione sofisticato che gestisce automaticamente la sostituzione degli URL durante il processo di importazione:

Rilevamento automatico: il plugin identifica automaticamente l’URL del sito di origine dal file .wpress e lo confronta con l’URL del sito di destinazione.

Sostituzione intelligente: il motore analizza ogni campo del database, identifica i dati serializzati e li deserializza prima di effettuare la sostituzione. Dopo la sostituzione, i dati vengono riserializzati con i contatori di lunghezza aggiornati.

Sostituzione multipla: il plugin gestisce automaticamente diverse varianti dell’URL, incluse versioni con e senza www, con http e https, e con diversi percorsi.

Sostituzione dei percorsi: oltre agli URL, il plugin sostituisce anche i percorsi assoluti del filesystem (ad esempio, /home/vecchiouser/public_html/ con /home/nuovouser/public_html/).

Funzionalità Trova e Sostituisci in All-in-One WP Migration

La Funzione Trova e Sostituisci durante l’Esportazione

All-in-One WP Migration offre anche la possibilità di specificare regole personalizzate di ricerca e sostituzione durante l’esportazione. Questa funzionalità è accessibile dalla pagina Esporta, nella sezione “Trova e Sostituisci”:

Campo “Trova”: inserisci la stringa da cercare nel database.

Campo “Sostituisci con”: inserisci la stringa con cui sostituire le occorrenze trovate.

Puoi aggiungere più coppie di ricerca e sostituzione cliccando sul pulsante “Aggiungi”. Le sostituzioni vengono applicate nell’ordine in cui sono specificate.

Scenari d’uso tipici per questa funzionalità:

Verificare la Completezza della Sostituzione

Dopo l’importazione, è fondamentale verificare che tutti gli URL siano stati sostituiti correttamente. Ecco come farlo:

Ispezione visiva: naviga le pagine principali del sito e verifica che immagini, link e risorse vengano caricate correttamente. Utilizza gli strumenti per sviluppatori del browser (F12) per controllare la console e la scheda Network alla ricerca di errori 404 o contenuti misti.

Ricerca nel database: utilizza phpMyAdmin o un plugin come Better Search Replace per cercare occorrenze del vecchio URL nel database. Se trovi ancora riferimenti al vecchio dominio, dovrai effettuare una sostituzione aggiuntiva.

Controllo dei contenuti misti (Mixed Content): se il nuovo sito utilizza HTTPS, cerca nel codice sorgente delle pagine riferimenti a risorse caricate tramite HTTP. I contenuti misti possono causare avvisi di sicurezza nel browser e compromettere il lucchetto verde nella barra degli indirizzi.

Strumenti Alternativi per Search and Replace

Se la sostituzione automatica di All-in-One WP Migration non ha coperto tutti i casi, puoi utilizzare strumenti aggiuntivi:

Better Search Replace

Un plugin gratuito per WordPress che offre una funzionalità di ricerca e sostituzione nel database con supporto per i dati serializzati. Caratteristiche principali:

WP-CLI search-replace

Se hai accesso alla riga di comando del server, WP-CLI offre un comando potente per la ricerca e sostituzione:

wp search-replace ’https://vecchiosito.it’ ’https://nuovosito.it’ --all-tables --precise

Il flag --precise attiva la gestione dei dati serializzati. Il flag --all-tables estende la ricerca a tutte le tabelle del database, incluse quelle personalizzate create dai plugin.

Interconnect/IT Search Replace DB

Uno script PHP standalone che puoi caricare sul server e utilizzare senza bisogno di accedere alla dashboard di WordPress. Particolarmente utile quando WordPress non è accessibile a causa di URL errati nel database. Ricorda di eliminare lo script dopo l’uso, poiché rappresenta un rischio di sicurezza se lasciato accessibile.

Processo di importazione con sostituzione URL

Scenari Comuni che Richiedono Search and Replace

Ecco gli scenari più frequenti in cui la sostituzione degli URL è necessaria:

Cambio di dominio: da vecchiosito.it a nuovosito.it. La sostituzione deve coprire tutte le varianti: con e senza www, con http e https.

Da HTTP a HTTPS: quando installi un certificato SSL e vuoi forzare il protocollo sicuro su tutte le risorse. Cerca http://tuosito.it e sostituisci con https://tuosito.it.

Da sottocartella a root: se il sito era installato in https://sito.it/wordpress/ e ora si trova in https://sito.it/.

Da locale a online: sostituzione di URL come http://localhost/miosito o http://miosito.local con l’URL di produzione.

Cambio di percorso server: sostituzione di percorsi come /var/www/vecchioaccount/ con /var/www/nuovoaccount/.

Da staging a produzione: sostituzione dell’URL di staging (ad esempio staging.sito.it) con l’URL di produzione (sito.it).

Attenzione ai Riferimenti Hardcoded

La sostituzione nel database non copre i riferimenti hardcoded nei file del tema o dei plugin. Se il vecchio URL è scritto direttamente nel codice PHP, CSS o JavaScript dei file del tema, dovrai modificare manualmente quei file. I posti più comuni dove cercare sono:

Una buona pratica di sviluppo WordPress è utilizzare sempre funzioni come home_url(), site_url(), get_template_directory_uri() e wp_get_attachment_url() anziché URL hardcoded, proprio per evitare questi problemi durante le migrazioni.

Gestione dei Contenuti Misti (Mixed Content)

Uno dei problemi più comuni dopo una migrazione è il contenuto misto, che si verifica quando una pagina HTTPS carica risorse (immagini, script, fogli di stile) tramite HTTP non sicuro. I browser moderni bloccano queste risorse o mostrano avvisi di sicurezza, compromettendo sia la funzionalità che la percezione di affidabilità del sito.

Per risolvere il problema dei contenuti misti dopo la migrazione, la soluzione più efficace è eseguire una sostituzione globale nel database, cambiando tutti gli URL da http://tuodominio.it a https://tuodominio.it. In alternativa, plugin come Really Simple SSL possono risolvere automaticamente la maggior parte dei problemi di contenuto misto intercettando le richieste HTTP e riscrivendole come HTTPS al volo.

Precauzioni durante il Search and Replace

La sostituzione nel database è un’operazione potenzialmente distruttiva. Ecco le precauzioni da adottare:

Crea sempre un backup prima: prima di eseguire qualsiasi sostituzione, crea un backup completo del database.

Utilizza la modalità dry run: se lo strumento la offre, esegui prima una simulazione per verificare quante e quali sostituzioni verrebbero effettuate.

Sii specifico: utilizza le stringhe più specifiche possibili per evitare sostituzioni indesiderate. Ad esempio, cerca https://vecchiosito.it anziché solo vecchiosito.

Verifica dopo la sostituzione: controlla accuratamente il sito dopo ogni operazione di sostituzione per assicurarti che tutto funzioni correttamente.

Conclusione

La sostituzione degli URL è un passaggio fondamentale di ogni migrazione WordPress. All-in-One WP Migration gestisce automaticamente la maggior parte dei casi, ma comprendere il processo e avere a disposizione strumenti alternativi ti permette di affrontare con sicurezza anche le situazioni più complesse. Ricorda sempre di fare un backup prima di qualsiasi operazione sul database e di verificare accuratamente il risultato dopo ogni sostituzione.

Se hai bisogno di assistenza con la sostituzione degli URL dopo una migrazione o vuoi assicurarti che tutto sia stato aggiornato correttamente, contattaci. Il nostro team ha esperienza nella gestione di migrazioni complesse e può verificare la completa integrità del tuo sito migrato. Scopri anche il nostro hosting WordPress gestito con migrazioni professionali incluse.

Articoli Correlati

Per migrazioni sicure e senza problemi, affidati al nostro hosting WordPress professionale. Per qualsiasi domanda, visita la nostra pagina contatti.

Migliora il Tuo Sito WordPress

Scopri le nostre guide complete sugli altri plugin essenziali per WordPress:

#Database #Migrazione #Search Replace #URL #Wordpress