Al giorno d’oggi migrare un sito WordPress è una procedura spesso automatizzata dagli hosting provider e numerosi plugin gratuiti e non. Questi sistemi automatici migrano gli asset e basta, sono processi di migrazione di database e immagini. Le attività di migrazione SEO come la mappatura degli URL e l’impostazione dei redirect non vengono svolte dagli hosting provider e da questi strumenti automatici. Se ti affidi a questi sistemi è molto probabile che dopo la migrazione perderai tutto il traffico.
Questa guida è stata scritta nel 2012 e mantenuta costantemente aggiornata a supporto dei webmaster che vogliono imparare la teoria e la pratica delle migrazioni SEO sporcandosi le mani e senza usare plugin (vi stimo!).
Migrare un sito web o un blog WordPress su un altro dominio è più semplice di quello che puoi pensare, è sufficiente seguire questa guida ed in pochi minuti avrai terminato.
Attenzione: la migrazione di un sito web ha un forte impatto sulla sua indicizzazione nei motori di ricerca, è importante considerare anche gli aspetti SEO di una migrazione che puoi trovare in questa guida dedicata.
Per siti web di piccole e medie dimensioni non è necessario chiedere aiuto ad un’agenzia SEO, cosa invece altamente consigliata quando si tratta di migrare portali con migliaia o milioni di pagine che generano importanti volumi di traffico.
Chiaro che migrare un sito web che non genera profitto è una cosa, migrare un sito web che mantiene delle famiglie o magari un’azienda intera è tutt’altro discorso.
Una migrazione affrontata nel modo sbagliato potrebbe causare perdite di posizionamento e di indicizzazione nei motori di ricerca, portando importanti cali di viste organiche e quindi meno conversioni.
Può capitare di dover migrare su un nuovo hosting mantenendo lo stesso dominio, oppure cambiare entrambi, dominio e hosting ad un sito WordPress. Ora ti spiegherò come trasferire un sito WordPress da un dominio all’altro, ovvero vedremo la procedura per fare un cambio di dominio SEO-safe.
Esempio:
Sito di Origine:
- Hosting: PIPPO SPA HOSTING
- Dominio: www.pippo.com
Sito di Destinazione:
- Hosting: PLUTO HOSTING SRL
- Dominio: www.pluto.it
Come migrare WordPress da un dominio ad un altro
1. Effettua una copia in locale del sito via FTP
Tramite un qualsiasi client FTP (Filezilla ad esempio) scarica sul tuo PC una copia totale del sito web, fai il backup della cartella /www/ oppure la root, dipende dal tipo di hosting usato.
In pratica devi salvare in locale la cartella del sito, quella che contiene le cartelle di sistema “wp-admin”, “wp-content”, “wp-includes” e tutti i file come le immagini e gli allegati caricati sul sito.
2. Scarica il Backup del database MySQL
Dal pannello di controllo di phpMyAdmin, oppure con qualsiasi plugin per la gestione del database (WP-DBManager ad esempio), scarica il backup del database MySQL.
Ti consiglio di scaricare la versione compressa (.gz) per evitare problemi in fase di upload poiché, se il file del database è troppo grosso, potrebbe non caricarsi via phpMyAdmin.
In alternativa a phpMyAdmin oppure plugin per WordPress, esistono anche software client che esegui nel tuo PC o Mac che permettono di collegarsi al server SQL per modificare, caricare o scaricare il database. I software che uso più spesso sono MySQL-Front, Toad Edge oppure X-SQLyog.
Per conoscere i dati di collegamento tra WordPress e MySQL puoi aprire il file wp-config.php situato nella root di WordPress. Questo file di configurazione contiene l’indirizzo del database, nome del database, nome utente e password per il login.
3. Imposta il nuovo hosting
Registra il nuovo dominio, attiva l’hosting (Linux, Ubuntu), PHP (7.2 o versioni più recenti possibilmente) ed il database MySQL. Salva tutti i dati di accesso:
- User e password FTP
- Utente MySQL
- Nome database MySQL
- Password MySQL
- Host del database MySQL
I servizi di hosting più famosi hanno la predisposizione per i più comuni CMS, acquista il pacchetto più adatto al traffico che ti aspetti dal sito web.
A questo punto la piattaforma dovrebbe essere pronta per il trasferimento di WordPress sul nuovo dominio.
4. Modifica il file wp-config.php
Ora è necessario cambiare le impostazioni che usavi per il vecchio sito, in particolare devi aggiornare le informazioni sulla posizione e accessi del nuovo database.
Apri con un editor di testo il file wp-config.php che trovi dentro la cartella principale del sito web che hai appena scaricato via FTP.
Modifica le righe relative ai dati di accesso al database MySQL (host, nome db, utente db e password db).
Se hai personalizzato il file wp-config.php con altre righe (ad esempio per attivare la modalità WordPress Multisite) puoi mantenere le modifiche nel nuovo file wp-config.php.
5. Modifica il database MySQL*
Questo passaggio è il più delicato e va fatto molto attentamente, puoi seguire strade alternative.
Se devi migrare da un hosting ad un altro senza cambiare il dominio non sarà necessario eseguire questa sostituzione. Carica il sito via FTP e il database MySQL sul nuovo server, successivamente cambia i dati del puntamento DNS. Per la procedura dettagliata salta al punto 6.
Alternativa 1 – phpMyAdmin
Se non hai altri strumenti per modificare il database puoi tornare su phpMyAdmin ed usare le sue funzioni.
Accedi al pannello di phpMyAdmin del vecchio hosting ed esegui la seguente query per sostituire il nuovo dominio al vecchio.
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://www.esempio.com', 'http://www.esempio.it');
PS: Sostituisci ‘http://www.esempio.com’ con il tuo dominio nella query mySQL. Questa query viene eseguita nella tabella wp_post_content
e nella colonna post_content
. Assicurati di lanciare il cerca e sostituisci in tutte le tabelle che contengono il dominio (basta un ‘cerca’ per trovarle).
Eventuali link inseriti nel tema a livello di template PHP e non presenti nel database andranno per forza di cose aggiornati a mano.
Dopo aver modificato il database scaricane una copia.
Alternativa 2 – Notepad++
Recupera il Backup del databse MySQL che hai scaricato, estrailo dall’archivio .gz e aprilo con un editor di testo, a me piace Notepad++ con plugin NppFTP. Attenzione a non cambiare l’encoding dei caratteri del file.
Utilizza la funzione “Find and Replace” (Trova e Sostituisci). Nel campo “trova” inserisci il vecchio URL (www.pippo.com), nel campo “sostituisci” invece inserisci il tuo nuovo URL (www.pluto.it). Lancia l’operazione e lascia macinare il processore.
Questo processo agisce su tutto il database, quindi su tutte le tabelle. Quando ha terminato salva il file e rimettilo nell’archivio .gz
6. Carica il sito via FTP
Per trasferire WordPress non è necessario installare il CMS sul nuovo hosting. Collegati via FTP al nuovo server, individua la root e carica nella cartella remota tutto il sito scaricato precedentemente nel tuo PC (cartella locale).
Se il tuo hosting ti fornisce una sola cartella remota carica il contenuto della cartella locale WordPress, in modo da avere nella root del nuovo server le cartelle “wp-admin”, “wp-content”, “wp-includes”, …
7. Importa il database WordPress sulla nuova piattaforma di hosting
Accedi al pannello di controllo phpMyAdmin del nuovo server SQL (i dati di accesso sono generalmente inviati via email dopo l’acquisto del servizio).
Nella colonna di sinistra di phpMyAdmin sono elencati i database attivi nel server, clicca su quello che vuoi utilizzare in modo da selezionarlo. Il database dovrebbe essere vuoto, se usi un vecchio db seleziona tutte le tabelle e cancellale.
Clicca “Import”, seleziona il file di Backup MySQL (.gz) e avvia l’importazione del db.
8. Apri il browser e controlla che il nuovo sito funzioni a dovere :)
Possibili imprevisti post migrazione
Come il saggio Murphy insegna, l’imprevisto è sempre dietro l’angolo. Di seguito descriverò i casi più significativi che mi sono capitati.
Il caricamento (upload) del database si interrompe
A volte disabilitare l’interruzione automatica dell’upload risolve il problema.
In altri casi il problema è causato dalla dimensione eccessiva del db da importare. Se hai accesso al file di configurazione php.ini puoi aumentare le dimensioni massime dei file in upload ed alzare il tempo di attesa.
Impossibile caricare il database MySQL perché il file supera le dimensioni limite.
Quando esporti il database dal pannello phpMyAdmin seleziona l’opzione “compresso con gzip” come mostrato sopra. Se anche comprimendolo non raggiungi la dimensione massima ammessa devi agire sul file php.ini ed aumentare la dimensione massima dei file in upload.
Impossibile importare il database MySQL perché il nome del database non coincide con il nome del database di destinazione.
Certi hosting che offrono un numero limitato di database non permettono di caricarne di nuovi oltre a quello fornito di base. In questo caso potete semplicemente rinominare il nuovo database con il nome del database da importare. Tuttavia certi hosting condivisi non permettono di rinominare il database MySQL…
In questi rari casi ho risolto caricando il database (quello da importare nel nuovo hosting) sul mio server SQL locale (magari creato ad-hoc per la gioiosa occasione), nel quale ho ovviamente pieni poteri di amministratore. Tramite il pannello di phpMyAdmin ho creato un nuovo database e ho importato il Backup. Ho poi rinominato il database con lo stesso nome del database di destinazione del nuovo hosting (quello che non puoi rinominare). Ho esportato il db ed il caricamento/sovrascrittura sul nuovo server è andato a buon fine.
Una seconda alternativa per risolvere il problema del nome database è editare a mano il database con un editor di testo. Apri il db ed elimina la riga (una delle prime) con scritto CREATE
(proprio perché il DB non va creato) e sostituire con USE inserendo il nome del DB fornito dal provider. Vedi anche il punto successivo.
Impossibile importare il database MySQL perché non è possibile creare nuovi database
Alcuni gentili lettori mi segnalano che certi providers non permettono l’importazione del database se nella prima riga dello stesso si usa il comando CREATE. In pratica il provider vieta la creazione di nuovi database e bisogna utilizzare/sovrascrivere quello già esistente. Per risolvere il problema vi basterà modificare la prima riga del database inserendo il comando USE (al posto di CREATE) e il nome del database fornito dal provider (Grazie a Giuliano Ricupero per gli screenshot e la notifica). Ecco come modificare il database:
Prima della modifica
Dopo la modifica: la riga è stata commentata disabilitandola
Il pannello di controllo non è più in versione Multi-site
Per ripristinare il back-end Multisite è necessario copiare i settaggi del vecchio file wp-config.php che attivano la gestione dei sotto-siti.
Il sito non funziona :(
Per prima cosa leggi bene il messaggio di errore stampato sul browser e cerca di individuare il colpevole. Se viene menzionato il database spesso vuol dire che le informazioni inserite nel file wp-config.php sono errate, controlla le 4 righe che identificano il database MySQL ed i relativi accessi.
Dopo una migrazione di dominio è spesso necessario reimpostare i permalink altrimenti WordPress restituisce un errore 404 nelle pagine interne. Se hai questo problema naviga nelle impostazioni dei permalink, seleziona la prima opzione (post-id) e salva così WordPress riscrive il file .htaccess. Ora puoi rimettere i permalink che utilizzavi prima e salva di nuovo. In pratica bisogna forzare la riscrittura delle regole di redirect sovrascrivendo il salvataggio delle opzioni con altre diverse (in certi casi basta semplicemente salvare due volte).
Anche i plugin potrebbero creare dei problemi. Prova ad escludere temporaneamente tutti i plugin rinominando la cartella (da ‘plugins’ a ‘temp-plugins’, ad esempio). Molto spesso i plugin vanno resettati quando si fa un cambio di dominio ed escludendoli avrai modo di capire se l’errore è dovuto ai plugin ed in particolare a quale plugin.
Nel peggiore dei casi è possibile che l’errore sia causato dal cerca e sostituisci fatto in precedenza. Prova ad importare il backup del database originale senza sostituire il dominio con un editor di testo (Step 5). Potrai cambiarlo successivamente dal pannello di controllo di phpMyAdmin nella tabella wp_options
.
Seleziona la tabella wp_options (se non hai cambiato la radice) e modifica il campo “siteurl” come indicato in figura. Tuttavia con questa alternativa dovrai modificare tutti i link interni fatti a mano (immagini comprese).
Libri su WordPress
- WordPress. La guida completa. Creare blog e siti professionali. Di Bonaventura Di Bello
- Sviluppare con WordPress, di Thord D. Hedengren
- Webmaster con WordPress, Seconda Edizione: Creare Rapidamente e facilmente Siti Web Professionali a Costo Zero
- WordPress Plugin: Guida Completa
- Professional WordPress + Website: Design and Development
- Blogging professionale con WordPress
- Sviluppare applicazioni con WordPress
- Trasforma WordPress per l’inbound marketing
Hai domande o dubbi da chiedere? Lascia un commento! Ogni mese invio una newsletter con le ultime guide pubblicate, ti interessa? Iscriviti!
Commenti |186
Lascia un commentoCiao, grazie mille per le informazioni utilissime!!
…”avevo” un wp localizzato in pippo.com/blog a cui ho voluto aggiornare il core ad una versione piu recente. Dopo l’avviso di installazione completata, wp è andato in crash e adesso mi restituisce solo una schermata bianca. Posso chiederti come fare per ripristiare il mio blog? L’ideale sarebbe poter mantenere lo stesso indirizzo, ma non ci sarebbero problemi a cambiare tipo pippo.com/blogV2. Ho l’accesso al vecchio database e posso crearne dei nuovi, ho i bkups antecedenti al crash .xml e .sql.gz
Grazie!!
ciao! prima di fare qualsiasi cosa prova a rinominare la cartella dei plugin in modo che wp lavori senza, se funziona riattiva un plugin per volta finchè non trovi il problema. Se è ancora in crash fai lo stesso sulla cartella del tema. good luck!
LoL ha funzionato!!
rinominando la cartella dei plugin la schermata bianca è stata sostituita da un piu utile messaggio di fatal error e da li sono riuscito a trovare il problema. Tutto a posto!! grazie!! :D
Bene, mi fa molto piacere :)
Grazie per essere tornato a lasciare il commento!
Spesso sono proprio i plugin che creano conflitti e rinominando la cartella si trovano subito i problemi!
Ciao, ottimo articolo!
Alla prossima!
Ciao Giovanni, e se invece avessi necessità di cambiare solo il DOMINIO e non l’HOSTING? (i file rimangono dove sono) – È possibile? Devo limitarmi al punto 5 del tuo tutorial? Grazie, ciao
Ciao Alessio, se devi soltanto cambiare dominio devi scaricarti il dump del database mysql e sostituire il vecchio URL con quello nuovo con il blocco note. Poi nel caso non si aggiornasse da solo c’è da cambiare l’indirizzo del sito dal pannello di controllo di wordpress nella scheda impostazioni – generali.
In bocca al lupo!
Ciao Giovanni
sto provando per la prima volta WordPress, in una cartella su un PC in locale
che mi fa anche da serverino web/php/mysql
inutile dire che wordpress ha messo tutti gli indirizzi delle
pagine e delle immagini
come linux/wordpress/nome-dell-immagine o della pagina
Quando migrero’ questo pezzetto di sito, naturalmente non vedro’ nessuna immagine,
c’e’ un qualche modo per evitare di dover editare a mano tutti i link,
togliendo magari la parte riguardante linux/wordpress ?
Ciao Alessandro, se non vuoi sporcarti le mani c’è un comodo plugin che duplica i siti WP, ti modifica in automatico i riferimenti al nuovo URL.
Questo il link https://wordpress.org/plugins/duplicator/
Ti ringrazio moltissimo,
di solito non ho problemi a ficcare le mani anche nel codice,
ma siccome sto’ facendo varie prove con sistemi locali, esterni, host fisici e virtuali,
il fatto di riscrivere a manina per ogni santissimo spostamento tutto il malloppo
mi cominciava ad infastidire, oltre a farmi perdere veramente troppo tempo.
Provero’ il plugin oggi stesso.
Ottima guida, seguita passo passo e funziona tutto alla grande
Grazie!
Ciao Giovanni,
volevo chiderti se nel caso dovessi cambiare solo nome del dominio su wp se potevo farlo direttamente dai setting generali wp senza effettuare altre modifiche (inoltre wp non permette di fare trasferimenti del proprio blog con ftp come purtroppo sappiamo…).
Come mi consiglieresti di fare?
Grazie mille per l’aiuto ;)
Ciao Giovanni, i blog su wordpress.com hanno regole particolari, la situazione rispetto ad un vero e proprio hosting di proprietà è ben differente! dai settaggi puoi modificare il nome del blog ma non l’indirizzo, per fare ciò dovresti creare un altro blog sempre su wordpress.com e copiare i contenuti. in un commento precedente ho indicato un plugin che effettua la copia da un blog all’altro ma dubito che tu possa installare quel plugin su wordpress.com!
saluti
Ciao, perdonatemi, ho creato un blog in locale con wordpress, questo però non è raggiungibile dai pc della rete locale, in quanto non riesco a risolvere i riferimenti localhost eccc… vorrei cambiare e mettere un più comodo blog.local invece che localhost.. come posso fare?grazie
Ciao Valerio, prova inserendo l’IP del server con la relativa sottocartella per trovare il blog.
es: 192.168.1.1/wordpress/
ovviamente ti serve un server in rete locale con ip fisso, altrimenti puoi optare per un servizio di domini gratuiti tipo “no-ip” ma diventa già più complesso da gestire
inizia a piccoli passi, come ad esempio:
1) prova a cambiare il riferimento URL di una immagine in un post e verifica se è visibile in rete
2) cambia l’url base di wordpress come spiegato in questa guida: ripristinare-url-in-wordpress-configurazioni-e-settaggi
3) se i primi 2 test vanno a buon fine puoi usare “find and replace” nel database come spiegato in questa pagina.
***ricorda di farti un backup di tutto prima di iniziare :)
good luck!
Giovanni grazie per la risposta è difficile trovare qualcuno disponibile. scrivendo l’indirizzo ip del server con relativa sottocartella, riesco a trovare il blog, però questo è spaginato e non vengono letti i riferimento alle immagini… ho provato a modificare tutti i riferimenti che puntavano a local host sul database ma niente.. in parole povere , sul server in locale, vedo tutto e funziona tutto correttamente, la mia necessità è che questo avvenga anche nei 50 computer della rete locale (possibilmente senza mettere mano ai file host di ognuno di esso) spero di essermi spiegato!
il problema è che nel tuo sito hai fatto puntare i riferimenti a localhost che è un comando che dice: “cerca dentro te stesso”.
se il server legge localhost si ritrova immagini e tutto… ma se un pc della rete si connette si mette a cercare le immagini nel suo localhost, e quindi giustamente non trova nè CSS ne immagini e allegati.
i riferimenti vanno fatti puntare all’URL assoluto. ad es:
http…..com/wordpress/wp-content/upload/…
spero di essermi spiegato :)
non usare “localhost” ma sostituiscilo con l’URL assoluto in modo che tutti i pc della rete capiscano dove reperire i file
Ti sei spiegato benissimo ed è proprio quello che tento di fare da una settimana, il problema è che non sono riuscito a farlo. step by step da dove modifico tutti gli eventuali riferimenti?
-database ? (trova e sostituisci localhost con xx.xx.xx.xxx)
– wp-config?
-alttro?
niente da fare, Oggetto non trovato!
L’URL richiesto non esiste su questo server. Se hai scritto l’URL a mano, per favore controlla che non ci siano errori.
come si fa in questi casi?
prova drasticamente nel database con find and replace. scrivi correttamente l’url come indicato sopra!
ma che server usi? windows o linux?
funziona tutto a livello di collegamenti alle pagine, riesco a vedere anche le immagini, ma non risolgo nessuno script nessun tema e nessun CSS… ho mdoificato il database con find e replace, ho modificato la tabello wp_option e relativo campo site url,
sento che sto facendo grandi progressi ma mi manca qualcosa.
utilzzo un pc con windows xp di prova, ma se ci riesco con questo sposterò tutto su ubuntu server dopo
Aggiornamento: Ho copiato e incollato tutti i file sotto radice htdocs e adesso risolvo tutti i css e il tema, ma ho perso lo sfondo e altre impostazioni.. non so se è il modo corretto avere doppi file, ma tant’è che ha tentativi ha funzionato
ottimo hai quasi finito, lo sfondo è sicuramente un problemino a confronto :).
probabilmente sono rimasti degli url sporchi in giro che vanno ripuliti. fai fare un giro a xenu sul sito e troverai subito cosa non va!
adesso lo provo, anche se non l’ho mai usato speriamo non sia difficile. ho un’ultimo problema non riesco a fare visualizzare le opzioni del tema, credo perchè prima utilizzavo wamp e adesso XAMP e quindi cambia la radice, spero di riuscire a sistemarlo, nel caso torno a scriverti, sei stato gentilissimo, grazie per la disponibilità
se io fossi in te cancellerei tutto e rifarei da zero, nella cartella giusta e con i settaggi giusti fin da subito.
ci metterai forse di meno che a correggere tutto e il risultato è sicuramente più sicuro!
Ciao Giovanni, ringrazio per la tua risposta nell’articolo:”Register.it, un servizio Hosting da evitare”, ora però incontro, come da manuale, un problemino non da poco, il mio piano attuale è un servizio business linux che comprende anche il servizio di backup, per effettuare la migrazione dovrei avvalermi di tale backup che risiede su un server di Register.it, tuttavia lo stesso a cui ho accesso via FTP, è una cartella non zippata che contiene tutti i file, ma non capisco poichè sono un pò digiuno in materia ed “ovviamente” il servizio clienti di Register non mi supporta, come devo comportarmi con il database MySql su PhpMyAdmin? Ho già fatto delle prove in locale con MAMP senza succeso, spero di essere stato chiaro e specifico che devo utilizare un b.u datato per ovviare ad alcuni recenti problemi tnk
Ciao Fabrizio, premetto che non ho capito bene il tuo commento, ad ogni modo il backup non ti serve, puoi scaricarti il sito via ftp e il database da phpmyadmin.
per migrare ti consiglio di leggere questo articolo: https://www.evemilano.com/come-migrare-wordpress-diverso-dominio-hosting/
Giovanni grazie per la guida, perdonami ma sono alle prime armi in materia, e non ho chiaro il concetto: nella migrazione vorrei utilizzare un backup di un mese fà per ovviare ad alcuni pasticci, il backup risiede su server di register.it al quale ho accesso via FTP e contiene tutti i file del blog, tuttavia non so come fare con il database. Se scarico quello attuale da phpmyadmin mi porterò dietro anche gli errori giusto? io vorrei tornare in dietro di un mese…
Ciao Fabrizio, purtroppo se un mese fa non ti eri salvato il database sql privo di errori non ci sono altre soluzioni.
Dovresti esportare da register il databse odierno ed importarlo nel nuovo sito, di seguito potrai correggere gli errori
grazie per veloce la risposta, trà i vari plugin avevo installato anche xcloner, ed ho quindi un file: backup_2013-03-01_18-03_www.miosito.net-sql-nodrop.tar , pensi che li ci possa essere il file del database?
Sembra proprio di si, l’estensione del db è sql quindi dovrebbe esserci, prova a scompattare l’archivio e cerca un file sql :)
ciao ho dei dubbi e spero qualcuno possa aiutami…
www.pippo.it
1) trasferisco tutte le cartelle da FTP a Locale
2) ho esportato tramite phpmyadmin il database “pippo”.sql aperto quindi con blocknote e,
ho modificato l’url da “pippo.it” e “blog.pippo.it”
blog.pippo.it
3) a questo punto entro nell’FTP di blog.pippo e carico i file nel server
4) faccio l’importazione del database… Quello che io mi chiedo è…
ha importanza il nome del file “pippo”.sql ?
Ciao Antonio, il nome del db non ha alcuna rilevanza a meno che non ci siano filtri sul phpmyadmin del nuovo provider. A volte infatti non si possono importare database con nomi diversi dal nome del db di destinazione. In questo caso basta rinominarlo in modo che coincidano ma al 99% dei casi non c’è bisogno di farlo.
Grazie per il commento e in bocca al lupo!
Ciao! Innanzitutto grazie per questa guida chiarissima! : )
Parlando di legge di Murphy.. ho appena eseguito l’intera operazione per la migrazione del sito (la versione vecchia è tuttora qui: http://hadezcomic.altervista.org )
Lo spazio web che ho acquistato è su Aruba (Linux + mysql). Da come puoi vedere, non si carica proprio un bel niente, ne pagine php ne cose come file .jpg sembrano caricarsi. Non capisco proprio dove sia il problema.. : (
Per caso ti viene qualche idea?
Ciao Silvia, sembra che non sia attivato il php sul server, sicura sia hosting linux?
Ciao! Avevo scritto anche al supporto di Aruba e mi avevano indicato il file .htaccess come origine del problema. In effetti rinominandolo è andato tutto a posto e ora funziona!
Grazie comunque per la tua risposta!! :)
Ciao, grazie per l’articolo, davvero utilissimo ;)
Ho avuto un solo problema nell’importazione delle tabelle nel nuovo database. Sicuramente è un caso isolato, ma lo riporto qualora qualcuno dovesse incontrare il mio stesso problema:
Intanto ho importato direttamente il file .sql perché il .sql.gz mi dava errore.
Poi ho dovuto sostituire, nel file .sql, alla chiusura di ogni tabella, la sintassi “TYPE=InnoDB” con “ENGINE=InnoDB DEFAULT CHARSET=latin1”, lasciando “AUTO_INCREMENT=1” intatto.
Per far prima consiglio la funzione trova e sostituisci, come nella guida ;)
Grazie ancora!
Ciao Giuseppe, interessante non mi era mai capitato questo caso, grazie per la segnalazione :)
Giovanni, grazie per la guida!
E’ stato un valido supporto per una migrazione :-)
Segnalo un “problema” che potrebbe capitare ad altre persone:
Quando si fa l’importazione del Database su un provider che fornisce già il DB occorre eliminare la riga (una delle prime) con scritto CREATE (proprio perché il DB non va creato) e sostituire la riga con scritto USE inserendo il nome del DB fornito dal provider
CIAO!!!
Giuliano
Ciao Giuliano, grazie mille per la segnalazione, non lo sapevo :)
Lo so che non è attinentissimo all’argomento affrontato ma ho un problema che non ho la minima idea di come risolvere.
Ho un sito “vecchio” registrato sul dominio novacar.it, ora ho creato un nuovo sito sulla piattaforma weebly e vorrei registrare il nuovo sito creato con wordpress con il dominio novacar.it. Quindi vorrei che si traslasse il dominio dal sito vecchio a quello nuovo. Potete aiutarmi? Grazie mille.
Non so se sono stato chiaro!?
Grazie ancora
Ciao Nicola, scusami ma non ho ben capito la tua richiesta. Se vuoi aggiungimi su skype e ne parliamo (info su pagina contatti)
Ho appena effettuato la migrazione da miosito.it/ e miosito.it/nuovo/
Sono riuscita a fare tutto… l’unico “dettaglio” che non funziona è l’upload/creazione nuove pagine. Tenta di scrivere nella cartella principale (miosito.it/wp-content) anziché in quella nuova (miosito.it/nuovo/wp-content). Dico “tenta” perché in realtà non riesce e mi dà come errore “The uploaded file could not be moved to wp-content/uploads/2013/08”.
Cosa potrebbe essere?
Mi sembra tutto corretto nei vari file di configurazione e nel DB SQL.
Grazie,
Viola
Ciao Viola, io controllerei prima di tutto il file .htaccess per vedere se forza alcuni redirect, dopodichè aprirei il database con il notepad e cercherei il path wp-content/uploads.
Per sicurezza riproverei a fare il trova e sostituisci sul database dal vecchio sito.com al nuovo URL sito.com/nuovo/
HELP!
Ho seguito tutti i passaggi, e al termine del tutto, quando mi collego a wp-admin, ricevo l’errore (ho messo i puntini sul nome del sito):
Parse error: syntax error, unexpected T_VARIABLE in /web/htdocs/www……com/home/wp-content/themes/minimum/includes/google-fonts.php on line 1
Qualche idea???
Grazie in anticipo,
Alberto
ciao per estrarre tutto il sito cioe’ post e le immagini allegate ai post per non perdere tutto e per potere ricaricaricare il db ok lo so’ fare ma se carico il db non importa le immagini allegate ai post hai una soluzione non complicata? grazie attendo tua risposta
Alberto il problema è quel plugin indicato nell’URL, prova a disabilitarlo momentaneamente e vedi se ti da ancora il problema (se non accedi al pannello di controllo puoi semplicemente rinominare la cartella del plugin via FTP. Nel caso prova a reinstallarlo!
Ciao Giovanni, grazie infinite perchè la guida è ottima.
tuttavia io ho provato due volte a fare tutti i passaggi ed ora sono ad un punto morto, quando apro il sito mi ritorna questo errore:
Errore nello stabilire una connessione al database
cosa potrebbe essere?
ora ho chiesto i dati di connessione (il DB_Host soprattutto non mi convince all’assistenza del nuovo hostiing) e attendo nel frattempo sai mica darmi una dritta?
ti ringrazio.
ciao
fabio
Ciao Fabio, con così pochi dettagli è difficile aiutarti. Il messaggio dice chiaramente che non non è possibile connettersi al database quindi a) i dati di connessione al database sono errati oppure b) il server mySQL è down.
Dovresti ricontrollare i dati di accesso a mySQL che hai inserito nel file config.cfg di WordPress
Ciao, guida fantastica, scusa l’ignoranza in materia, ma io ho un sito realizzato in java con tutti gli articoli già creati , i componenti installati ecc… ma l’azienda sta cambiando nome e quindi anche dominio , vorrei importare il sito in java che ho sotto il nuovo dominio , posso usare questa stessa guida?
Ciao Francesco, direi di no! Un sito in java è diverso da WordPress che usa PHP
Ciao, grazie per il tutorial. Ho comunque dei grossi problemi.
Recentemente un mio cliente si è visto disabilitare il sito. L’host ha creato due backup. Ho pulito i backup dai backdoor. Successivamente, volendo cambiare host ha registrato un dominio su register.it con hosting Linux.
Ho scaricato il database dal vecchio host e ho provato ad importarlo ma ogni tentativo fallisce fornendo come risultato Errore 1044 (accesso negato sostanzialmente). Sto sbattendo la testa da circa 5 ore per questo problemone e non riesco a risolvere.
Sai mica il perché?
Potrebbero essere diverse le cause, le più frequenti come indicato nell’articolo sono le dimensioni eccessive del database oppure il nome del database. Nel primo caso dovresti comprimere il db prima di importarlo, nel secondo devi rinominare il db con nome = a quello presente su register.it.
Register.it generalmente offre un numero limitato di db, se cerchi di importare un db con nome diverso lui non ti lascia perchè dovrebbe darti un db aggiuntivo.
Ciao Giovanni.
Ti ringrazio moltissimo per questa guida, perchè è fatta davvero bene.
Tuttavia purtroppo non riesco a risolvere questo problema (fastidiosissimo, tra l’altro, perchè ho già dovuto rifare il sito due volte per altre questioni…non vorrei doverlo rifare una terza per modificare l’url).
Praticamente la mia situazione è questa: Sto lavorando in locale e, dunque, il mio sito è settato con i link così: localhost:8888/nomedelsito.com …..ho bisogno che diventi localhost:8888/nomedelsito.co.uk
ho provato a seguire tutti i tuoi passaggi e anche altri trovati nel web…ma nulla, quando provo ad aggiornare la pagina con l’url nuovo non si carica nulla..rimane bianca.
In locale è giusto che io modifichi anche il nome della cartella del sito? Perché, per crearlo, la cartella con dentro tutti i contenuti WP si chiama “nomesito.com” …e, quindi, ho cambiato anche quella in “nomesito.co.uk” ..ma non è servito.
Che dimentichi qualcosa di fondamentale? Sono disperata all’idea di dover ricominciare tutto il sito una terza volta, solo per farlo .co.uk.
Ti ringrazio per l’aiuto che riuscirai a darmi,
Paola
Ciao Paola, che server usi? Linux o Windows?
Non hai un file .htaccess da modificare oppure un file di configurazione del server che faccia puntare il sito locale alla nuova cartella?
hai modificato il database sostituendo tutte le ricorrenze del vecchio url con il nuovo?
Cercate sempre di fornire più info possibili sul vostro setup così che vi si possa aiutare al meglio :)
Ciao Giovanni. Grazie per la celere risposta e scusa se non sono stata dettagliata!
Non ho un .htaccess perché, essendo in locale, non accedo dall’FTP.
Ho provato sì anche a modificare tutto il database con il “Trova e Sostituisci” ma non funziona.
Cosa intendi per il file di configurazione del server? il file config.php? (quello l’ho impostato modificando i dati del database nuovo, che ho creato per il nuovo url).
Domani dovrei metterlo live, ma con la configurazione .co.uk (il mio cliente ha deciso all’ultimo di farmi sapere che useremo co.uk e non più .com)…ma ho paura che, trasferendolo live da localhost:8888/nomedelsito.com a nomedelsito.co.uk ..ci siano ulteriori malfunzionamenti e non vada comunque. Per questo sto pensando che sia meglio passarlo in co.uk già nel locale, prima di metterlo online.
Ti consiglio di passare dal sito funzionante .com al live .co.uk seguendo passo passo la procedura indicata nella guida. Io faccio sempre così :)
Ti ringrazio molto!
Allora domani proverò a seguire il tuo consiglio e ti farò naturalmente avere notizie!
Spero positive!
Grazie davvero per occuparti di me a quest’ora! :-)
Paola
Ciao Giovanni.
Sto provando ad aggiornare il mio sito online, ma ho riscontrato un problema con l’importazione del Database, come hai segnalato tu nella tua guida.
Purtroppo però non riesco a capire quale sia l’errore. Sapresti aiutarmi? (ho modificato alcuni dati per la privacy)
query SQL:
MIOSITO.co.uk– phpMyAdmin SQL Dump
version 3.5.7
phpmyadmin.net
Host: db502489672.db.1and1.com
Generato il: Nov 16, 2013 alle 13:01
Versione del server: 5.5.29
Versione PHP: 5.4.10
SET SQL_MODE = “NO_AUTO_VALUE_ON_ZERO”
Messaggio di MySQL:
#1064 – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘xxxxxx.co.uk– phpMyAdmin SQL Dump
version 3.5.7
phpmy’ at line 1
Ciao Paola, quell’errore di solito viene dato quando importi database da versioni mysql diverse, ad esempio esporti dalla v5 e importi in v4.
Per risolvere puoi semplicemente specificare in fase di esportazione: “Modo di compatibilità SQL: mysql40” se, ad esempio, importi dalla versione 5 alla 4
ciao giovanni, complimenti ottima guida.
Io dovrei fare delle modifiche a un sito creato con wordpress, e per evitare complicazioni volevo passarmi tutto in locale, su xampp.
Ho scaricato sito e database e seguendo la tua guida ho fatto le dovute modifiche ai file, e tutto pare funzionare… Mi carica in maniera corretta,o quasi, la home page.
Però quando dalla home del mio sito(localhost/miosito/home) clicco su un link qualsiasi mi porta direttamente alla home di xampp.
Ho provato a cancellare il .htaccess, e ora quando entro nel sito in locale, a parte la home non mi fa visualizzare altre pagine(se clicco và nel url giusto tipo localhost/miosito/home/pagina1..) però la pagina rimane bianca e non visualizza ciò che contiene.
non sò come andare avanti, devo editare correttamente il file .htaccess? in questo caso, cosa devo modifcare?
altra cosa, tra i file del sito scaricato tramite filezilla, c’è pure un file chiamato sitemap.xml, ho provato ad editare pure quello, visto che all’interno conteneva dei link indirizzati a miosito.com e non a localhost/miosito, m a non è cambiato nulla (e pare non cambi nulla neppure se lo cancello..)
qualche consiglio??
grazie in anticipo
Renato
Sono riuscito a farlo funzionare
scrivo come ho fatto magari qalcuno si trovasse nella mia stessa situazione.
Basta editare correttamente il file .htaccess sostituendo la riga
RewriteBase /
con
RewriteBase /miosito.it/
nel mio caso miracolosamente si è editato da solo mentre provavo a fare delle modifiche dalla pagina di admin di wordpress,da impostazioni generali, ho modificato indirizzo sito url ma non funzionava, quindi ho rimesso tutto come prima e magicamente mi ha modificato anche il .htaccess.
:)
grazie lo stesso,
ciao
Non avrei pensato fosse l’HTACCESS perchè di solito su XAMPP su una installazione vergine è vuoto. Ottimo, grazie per aver condiviso la soluzione, tornerà sicuramente utile a qualcuno :)
di niente, grazie a te !!
la cosa bella poi è che veramente si è editato da solo, me ne sono accorto solo perche notepad++ mi ha avvisato che il file è stato modificato.. ;)
Ciao e grazie per l’ottima guida. Ho un problema e spero che tu abbia voglia e tempo di rispondermi:
Nn riesco a caricare il db su aruba (si tratta di un trasferimento da register ad aruba). Avevo fatto il backup del db sia da phpmyadmin di register sia con un plugin.in un caso mi da questo messaggio errore: # ——————————————————–
# Tabella: `wp_commentmeta`
# ——————————————————–
#
# Cancella tutto tabella `wp_commentmeta`
#
DROP TABLE IF EXISTS `wp_commentmeta` ;
Ciao, ho capito che il mio problema è quello che riporti nel caso alla fine dell’articolo, ovvero il problema CREATE. Ho però modificato il db ma non lo carica ugualmente. Non riesco a capire, guardando gli screenshot, cosa devo modificare. Tolgo i due trattini e scrivo USE apposto di CREATE, se ho capito bene? Grazie
Ciao Paolo, grazie per essere tornato con la tua soluzione, è un gesto che apprezzo sempre molto!
Se il provider non ti permette di creare nuovi database e non ti importa il backup puoi provare questa strada:
1) fatti una copia di sicurezza del database
2) aprine una copia con notepad++ o equivalente e rendi un commento la riga con CREATE anteponendo “– ” (due meno e lo spazio) ad inizio riga come da screenshot
3) salva il db, ricomprimilo zip/gz e prova di nuovo l’upload.
Fammi sapere :)
Ho provato anche con // ma nulla, stesso errore. Sullo screenshot comunque io vedo “–”
Il db importato in locale su MAMP funziona benissimo. Ho scritto anche all’assistenza aruba, vediamo cosa rispondono. Su un forum un utente diceva di cancellare proprio la riga con CREATE ma non va neanche così.
Grazie
Il commento nel database si mette con i due meno, non con lo slash. Era un errore il commento di prima se riguardi è corretto :)
Spero che queste discussioni possano aiutarti
http://stackoverflow.com/questions/2708100/mysql-1046-error-when-importing-wordpress-database
http://wordpress.org/support/topic/plugin-backup-scheduler-feature-request-drop-table-if-exists
http://wordpress.org/support/topic/error-when-importing-sql-database-to-phpmyadmin-1
Risolto, almeno pare. Usando il db da plugin ha importato!
Giovanni ho fatto tutto. Anche l’importazione del db è andata bene. Ora però non vedo il sito. il browser mi restituisce questo messaggio “La pagina web ha generato un loop di reindirizzamento”. Che faccio? Se cerco di accedere a …wp-admin inserisco utente e password wp ma niente mi ritorna il messaggio loop di reindirizzamento
Ciao Alessandro, hai provato a cancellare il file .htaccess? Hai plugin di redirect attivi? Nel caso cancella la cartella nel folder /plugins/ e poi vai in permalink e salva cosi refreshi e riscrivi il file .htaccess :)
Esatto.
Anche io ho avuto lo stesso problema con i permalink.
Risolto così:
https://www.youtube.com/watch?v=HedHYNpqoOg
Andrea
Anche io ho avuto lo stesso identico problema, come hai risolto?
Grazie!
Trovato! Oltre al problema dei plug-in di rindirizzamento che sono da eliminare, bisogna modificare il wp-config aggiungendo queste due righe
define ( ‘WP_HOME’ , ‘ http://example.com ‘ );
define ( ‘WP_SITEURL’ , ‘ http://example.com ‘ );
ciao ho un prolema e forse mi puoi aiutare ho visto che sei molto preparato: ho spostato il WP da una cartella alla root. ora va tutto bene ma quando faccio l’upload le immagini mi vanno a finire sempre nella vecchia cartella, e nella libreria vedo il broken link perché le cerca nella nuova… non sai come potrei uscirne? grazie in anticipo!
Ciao Fabrizio, quoto dal sito wordpress.org:
Existing image/media links uploaded media will refer to the old folder and must be updated with the new location. You can do this with the Velvet Blues Update URLs plugin, or with a search and replace tool, or manually in your SQL database.
Risorsa: http://codex.wordpress.org/Moving_WordPress
Altra opzione:
In order to change the default media upload location, you need to edit the wp-config.php file located in the root directory of your WordPress installation. If you want upload directory to be wp-content/files then you will need to place the following code in wp-config.php
define( ‘UPLOADS’, ‘wp-content/’.’files’ );
If you want the upload directory to be outside wp-content, like example.com/files/ then you need to set upload path in wp-config.php like this:
define( ‘UPLOADS’, ”.’files’ );
Remember you can still choose whether or not you want uploaded files to be organized in month/year folders in Settings » Media.
Spero di averti aiutato, ciao!
ciao,innanzitutto complimenti per l’articolo. sono un neofita e mi occorrerebbe un consiglio, vorrei mantenere il mio dominio e sostituire il sito fatto da una persona, a me non piace, vorrei crearlo con google sites e trasportarlo nel mio dominio tophost. secondo te è fattibile?
Ciao Diego,
certo puoi fare tutto quello che vuoi! Io ti consiglio di accedere al tuo spazio FTP per scaricarti una copia del sito (per ogni evenienza!), poi cancelli tutto e carichi WordPress (ti serve un hosting linux e un database mysql). A mio parere questo è il modo più semplice per iniziare a “smanettare” online, ci sono moltissimi temi e plugin gratuiti per sperimentare ed imparare :)
Che possano beatificarti! :D
Ho risolto un problema tecnico dopo aver letto il tuo articolo. Il problema, alla fine, era un template. Grazie ancora…
eheheheh Gianpiero mi accontento del tuo grazie :D
Il grazie è d’obbligo per te e per le persone che, come te, mettono a disposizione il proprio know how per la comunità! :-)
Saluti
Ciao Giovanni,
innanzitutto mi unisco anticipatamente ai grazie per aver creato questa bellissima e dettagliata guida. Credo di aver eseguito correttamente tutte le operazioni, ma quando provo ad aprire il sito mi ritrovo un “500 Internal Server Error”. Puoi verificare anche tu provando ad aprire il sito www wonderstorecompany.eu. Il mio obiettivo è quello di operare una copia del sito www occhialiretro.com – per ragioni di test – che, come puoi vedere, è un ecommerce realizzato con wordpress tramite il plugin “wp ecommerce”.
Andando a vedere il log degli errori nel pannello di controllo, vi si riscontra un errore del tipo “AH01215” frequente.
Spero tu possa aiutarmi a risolvere questo problema; non so se trattandosi in questo caso di un ecommerce invece di un classico blog wordpress, c’erano altre procedure da eseguire. Confido nel tuo genio :). Un caro saluto e di nuovo grazie.
Ciao Roberto grazie per il commento, hai il sito ospitato su Aruba? In tal caso devi resettare i permessi FTP.
Se invece è un problema di HTACCESS devi andare nel pannello di WP, in permalink, e salvare le impostazioni in modo che venga rigenerato il file. Fammi sapere se risolvi!
Salve!! La guida è molto chiara!! Dunque grazie prima di tutto…
Purtroppo però mi sono arenata nell’importazione del database, anche se mi sembra di aver seguito la procedura correttamente.
il Mysql mi segnala il seguente errore:
#1044 – Access denied for user “Sql(nome del nuovo database)” to database “Sql(nome del vecchio database)”
Dove sbaglio?
Ciao Antonella, “Access denied for user” vuol dire che la tua utenza (nome utente & password) non possono accedere al database. Ti serve una utenza da amministratore! Se hai registrato tu il sito ti basta accedere al pannello di controllo dell’hosting e verificare i dati corretti.
Salve Giovanni complimenti per il tuo tutorial.
Vorrei chiederti in che modo devo modificare la procedura da te indicata se voglio spostare un sito costruito con wordpress da un dominio (aruba) ad un altro (sempre aruba) che condivide il database mySQL. Ad entrambi i siti accedo con la stessa login e il servizio mySQL viene acquistato solo una volta e funziona con tutti i domini associati a quella login. Grazie per la tua attenzione.
Ciao!
Abbiamo seguito alla lettera la tua guida… nel nostro caso dovevamo solo cambiare hosting.
Purtroppo qualcosa è andato storto e il risultato è:
500 Server Error
A misconfiguration on the server caused a hiccup. Check the server logs, fix the problem, then try again.
Sai come possiamo risolvere?
E’ una vecchia versione di wordpress… mi pare la 4.
Grazie,
Mk
su che hosting è il sito? se è su register o aruba dopo la modifica bisogna ripristinare i permessi FTP delle cartelle!
Salve,
Grazie mille per l’ottimo tutorial, a seguito di una migrazione mi da il classico 404 url not found. I passi che ho seguito sono tutti corretti li ho eseguiti due volte e verificati altrettante volte, non è il mio solito hosting (con cui non ho problemi) e ho dovuto cancellare il cms che era montato prima (tra l’altro ci sono 3 cartelle vuote che non mi fa cancellare anche con tutti i permessi) a cosa potrebbe essere dovuto? dove devo cercare l’errore?
Grazie per l’attenzione
Ciao Guglielmo, l’errore 404 vuol dire che l’indirizzo che stai digitando non esiste. Probabilmente devi aggiornare l’URL di WordPress come indicato nella sezione “trova e sostituisci”.
Una alternativa è cancellare il file .HTACCESS, entrare poi nelle opzioni dei permalink e salvare di nuovo le impostazioni in modo da riscrivere il file.
Salve,
devo esportare i contenuti di uno dei siti posti in un Multisito WordPress, e poi caricarlo in un altro sito wordpress singolo(dedicato). All’istanza da esportare sono agganciati gli utenti di active directory. il contenuto da esportare è sono articoli, pagine ed utenti di active directory.
La versione di wordpress del mio attuale multisito wordpress dovrebbe essere 3.0.
Grazie
Ciao Francesco, ti serve un client SQL oppure phpMyAdmin, devi trovare le tabelle con il prefisso del sito da esportare e poi esportare i dati che potrei importare nel nuovo sito non-multisite. Ti consiglio questa guida che è molto chiara https://deliciousbrains.com/wp-migrate-db-pro/doc/extracting-subsite-multisite-create-new-single-site-install/
Salve,
innazitutto la ringrazio per la pazienza e dedizione dedicata al mio caso. Ho seguito i passaggi della guida, ma a quanto pare il sito non viene caricato interamente. Non tutte le immagini e links sono stati trasferiti nel sito dedicato. Come mai?
Grazie
Ciao Francesco, mi servirebbe un link per vedere la situazione, così mi è molto difficile capire il tuo problema. Alcune immagini funzionano e altre no? Hai eseguito bene il “trova&sostituisci” con l’URL nel database? La stessa cosa può essere eseguita via phpMyAdmin con un comando del genere:
UPDATE wp_posts SET post_content = REPLACE(post_content, ‘http://www.esempio.com’, ‘http://www.esempio.it’);
Fossi in te proverei :) ovviamente sostituendo il tuo URL.
In alternativa usa Duplicator – wordpress.org/plugins/duplicator/
per quanto riguarda Duplicator…sul sito leggo che si può utilizzare dalla versione 3.8 in poi, mentre io utilizzo una versione di wordress più “vecchia”.
il trova e sostituisci ho riprovato a farlo con Notepad++ (per bene) ma il risultato è lo stesso.
l’unico passo della guida che non effettuo è la copia del contenuto della cartella uploads, poichè nel wp-content del mio multisito non c’è la stessa disposizione di cartelle come nella guida. può dipendere dal fatto che la guida è riferita ad una versione di wordpress più recente (mentre la disposizione del mio wordpress è differente) ?
grazie
Probabilmente è proprio il diverso URL delle immagini che le rende inaccessibili. Come prima cosa ti consiglio di aggiornare WP anche solo per un discorso di sicurezza, poi segnati l’URL delle immagini rotte e cerca di capire perchè non sono dove il sistema si aspetta. Nel caso replica la struttura della cartella wp-content come spiegato nella guida.
ma non è solo un problema di immagini…ma anche di contenuti.
al blog non vengono caricati gli articoli recenti…ma solo quelli da giugno 2014 in poi, ed inoltre se provo ad accedere ad una qualsiasi altra pagina del blog mi compare l’errore. il blog originale (e funzionante caricato su multisito è blog.planetek.it).
Ricordati che i multisite hanno un db diverso dalla singola installazione di WP, come spiegato nella guida che ti ho linkato qui sopra :)
Salve, utilizzare “search and replace” del dominio con un editor di testo (come Notepad++) nel database non è una buona pratica. In questo modo andranno perse alcune impostazioni (dei plugin o widget) a causa della serializzazione degli array. La serializzazione è una tecnica per convertire un array di stringhe in una stringa e contiene al suo interno le lunghezze in caratteri delle varie stringhe. Con una sostituzione automatica sul file SQL del database cambierebbe solo il contenuto ma non questo valore numerico, causando alcuni problemi. Per evitare questo problema è necessario utilizzare lo script precedentemente citato di interconnectit, oppure uno dei i plugins “Duplicator”, “WP Migrate DB”, “WP Clone by WP Academy”. Forse si può fare anche, ma non ho testato con i plugins “WP-DBManager” e “WP-DB-Backup”. Oppure con il tool da riga di comando WP-CLI.
Grazie Antonello, consiglio molto utile. Personalmente eseguo la query di sostituzione via mySQL
(UPDATE wp_posts SET post_content = REPLACE(post_content, ‘http://www.esempio.com’, ‘http://www.esempio.it’);)
Non ho mai ricevuto errori le poche volte che passavo via txt ma hai fatto benissimo a farlo presente, le situazioni che si presentano sono diverse da sito a sito, da hosting a hosting :) grazie!
nel caso di qst query
UPDATE wp_posts SET post_content = REPLACE(post_content, ‘http://www.esempio.com’, ‘http://www.esempio.it’);
wp_posts = nome tabella giusto?
post_content = cosa sarebbe???
esempio.com = vecchio link multisito giusto?
esempio.it = nuovo link sito dedicato giusto?
1) corretto
2) no, è la colonna “post_content” dentro la tabella “wp_posts”
3) no, mi riferisco alla procedura sito singolo
no non ho capito
se devo lanciare quella query quali sono i campi da modificare?e con che cosa?
grazie
Di nulla Giovanni, è un piacere. Con quest’ultimo metodo sostituisci soltanto gli URL della tabella dei posts (e neanche tutti), dovresti quantomeno includere tutte le tabelle di wp interessate:
UPDATE wp_posts SET guid = replace(guid, ‘http://olddomain.com’,’http://newdomain.com’);
UPDATE wp_posts SET post_content = replace(post_content, ‘http://olddomain.com’, ‘http://newdomain.com’);
UPDATE wp_links SET link_url = replace(link_url, ‘http://olddomain.com’, ‘http://newdomain.com’);
UPDATE wp_links SET link_image = replace(link_image, ‘http://olddomain.com’, ‘http://newdomain.com’);
UPDATE wp_postmeta SET meta_value = replace(meta_value, ‘http://olddomain.com’, ‘http://newdomain.com’);
UPDATE wp_usermeta SET meta_value = replace(meta_value, ‘http://olddomain.com’, ‘http://newdomain.com’);
UPDATE wp_options SET option_value = replace(option_value, ‘http://olddomain.com’, ‘http://newdomain.com’);
Anche in questo modo però potresti lasciare fuori delle tabelle relative ad alcuni plugin, e sopratutto ribadisco che non risolve il problema dei dati serializzati negli array.
Il sito “funzionerà” comunque, ma alcune impostazioni andranno perse, come del testo contenuto nei widget. In alcuni casi di siti complessi potrebbe causare gravi problemi che potrebbero anche rendere il sito “non funzionante”.
Se dai un occhiata allo script di interconnect (srdb.class.php riga 669) vedrai che converte gli array serializzati in stringhe, sostituisce l’URL, ricalcola il valore numerico della lunghezza dei caratteri e riconverte in array serializzato. Inoltre risolve anche alcuni possibili problemi legati a caratteri di escape.
Io consiglierei a tutti di utilizzare quello script o in alternativa i plugin che ho citato :) ciao!
scusami hai scritto “è necessario utilizzare lo script precedentemente citato di interconnectit” ma dove lo hai citato precedentemente?
grazie
Il commento è questo, mentre lo script lo trovi qui
Ciao Giovanni, grazie per l’articolo, mi è stato utile per gestire il deploy di un sito.
Ci sono un paio di casistiche che ho incontrato che ti vorrei sottoporre:
– al punto 6: “Per trasferire WordPress non è necessario installare il CMS sul nuovo hosting”. Ho trovato molto utile questo suggerimento perché molti hosting permettono l’installazione di wordpress dal cPanel in un click. Alcuni come il mio utilizza dei suffissi personalizzati alle tabelle, cosa che rende ancor più valito il tuo consiglio.
– come prospettavi, un plugin per la gestione delle immagini mi ha dato problemi. Dopo varie analisi ho scoperto che esso memorizzava nel db il path per la scrittura delle immagini. Il mio hoster assegna un nome di folder differente per ogni website: mi è bastato correggere le occorrenze del vecchio path con il nuovo per far funzionare tutto, ad esempio:
da ‘/home/folderA/public_html/wp-content/uploads’ a ‘/home/folderB/public_html/wp-content/uploads’.
Ho una domanda: nel lungo periodo, se modifico/implemento nuove funzionalità nel sito di staging, esiste un metodo per gestire i successivi rilasci in produzione oppure devo riprodurre le modifiche in produzione manualmente?
Grazie, ciao,
Nicola A.
Ciao Nicola, l’ambiente di staging e la funzionalità di deploy dipendono dall’hosting, alcuni offrono questo servizio (http://wpengine.com/ ad esempio lo fornisce). Non conosco plugin o altro che trasferiscono in automatico il sito di test sul server live.
Se esegui la procedura di questa guida due volte vedrai che ti verrà molto più veloce :)
Ciao Giovanni, interessante articolo. Avrei un quesito e spero tu possa essermi di aiuto.
Abbiamo un sito con dominio .com realizzato con WP su Hosting Linux vorremmo cambiare il dominio con .org già in nostro possesso… questo per liberare il .com e procedere con una nuova installazione su altro server sempre con WP e con la versione aggiornata del tema che stiamo usamdo. Ci serve di avere il vecchio sito accessibile ma con il dominio .ORG
L’installazione ha dei bug che non possiamo risolvere se non aggiornando all’ultima release del tema ma vogliamo farlo su nuovo server e installazione pulita. Come dobbiamo procedere? Grazie in anticipo per eventuali suggerimenti.
Ciao Andrea, l’aggiornamento del tema non comporta alcun cambiamento a livello di URL, ma il cambio dominio si. Cambia gli URL ed i link nel sito in modo che rispecchino il nuovo dominio, e attiva i redirect 301 da COM a ORG. Segui la guida :)
Ciao Giovanni , intanto grazie per la celere risposta.
Forse non mi sono spiegato bene. Vorremmo poter liberare il dominio .com attualmente legato al sito creato con WP mantenendo in piedi il sito con dominio.org successivamente creeremo un nuovo sito .com su altro server con installazione pulita e tema aggiornato. Vorremmo solo capire come effettuare questo cambio URL nel sito attuale.
Grazie
Segui la guida, spiega proprio quello che chiedi. Devi poi assicurarti di avere tutti i redirect attivi.
Mitico! It works!!!!!!! :)
Salve Giovanni,
dovrei trasferire un forum phpBB da un host ad un altro (aruba).
Credo che i passi siano:
1. via ftp copiare in locale l’intero database
2. una volta trasferito il dominio, devo installare la nuova applicazione phpBB su aruba e poi trasferire via ftp tutto il vecchio database, o posso non installare la nuova applicazione phpBB e limitarmi a trasferire il database via ftp (il database e’ autoconsistente) ?
3. Modificare il file config.php
Tutto giusto? Grazie 1000 per l’aiuto e complimenti per l’articolo.
Giovanni.
Buongiorno Giovanni, grazie per il commento ma phpBB non è l’argomento di questa guida e vedo che c’è un pochino di confusione sotto l’aspetto tecnico, mi spiego meglio.
1) il database non risiede nell’FTP bensì nel databsae mySQL. Via FTP puoi copiare i file del sito (immagini, file html/php &co) ma NON il database. Per esportare ed importare il database ti serve o un client mySQL per connetterti al server del database (SQLfront ad esempio) oppure phpMyAdmin.
2) se copi tutto via FTP + DB allora non ti serve rifare alcuna installazione.
In questa pagina sul sito ufficiale di phpBB trovi una guida spiegata per bene per migrare da un dominio all’altro: https://www.phpbb.com/support/docs/en/3.1/kb/article/transferring-your-board-to-a-new-host-or-domain/
In bocca al lupo e buon lavoro!
Perfetto!
La ringrazio per la rapida risposta e per la disponibilità!
Salve Giovanni,
complimenti per il tuo blog e soprattutto per la tua competenza in materia!
Allora sto provando a trasferire il mio sito da locale (easyphp) a remoto (database su aruba) ma sto riscontrando un problema con l’importazione del database locale (ho già sostituito gli indirizzi “localhost” con quello del mio sito) su aruba.
Mi da il seguente errore:
Query SQL:
#
# Struttura della tabella `wp_commentmeta`
#
CREATE TABLE `wp_commentmeta` (
`meta_id` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
`comment_id` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT ‘0’,
`meta_key` VARCHAR( 255 ) COLLATE utf8mb4_unicode_ci DEFAULT NULL ,
`meta_value` LONGTEXT COLLATE utf8mb4_unicode_ci,
PRIMARY KEY ( `meta_id` ) ,
KEY `comment_id` ( `comment_id` ) ,
KEY `meta_key` ( `meta_key` ( 191 ) )
) ENGINE = MYISAM AUTO_INCREMENT =3 DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
Messaggio di MySQL: Documentazione
#1273 – Unknown collation: ‘utf8mb4_unicode_ci’
Ho già provato a svuotare la cache ma nulla è cambiato.
Ho usato il plugin WP DB BACKUP per esportare il database…
Spero tu possa darmi una mano perchè sto impazzndo da oggi pomeriggio…
Grazie 1000
Ciao Marco, prova seguendo questi due passi:
1) edita il file locale phpMyAdmin/libraries/DatabaseInterface.class.php
Cambia:
if (PMA_MYSQL_INT_VERSION > 50503) {
$default_charset = ‘utf8mb4’;
$default_collation = ‘utf8mb4_general_ci’;
} else {
$default_charset = ‘utf8’;
$default_collation = ‘utf8_general_ci’;
}
In:
//if (PMA_MYSQL_INT_VERSION > 50503) {
// $default_charset = ‘utf8mb4’;
// $default_collation = ‘utf8mb4_general_ci’;
//} else {
$default_charset = ‘utf8’;
$default_collation = ‘utf8_general_ci’;
//}
2) A questo punto cancella il cookie “pma_collation_connection” dal tuo browser, o cancella tutti i cookies. Riavvia phpMyAdmin e riprova :)
Se questa procedura non dovesse funzionare – prova ad esportare il database così:
1) Clicca “Export” tab nel database,
2) Clicca il bottone “Custom”,
3) Naviga nella sezione “Format-specific options” e cambia la voce nella tendina: “Database system or older MySQL server to maximize output compatibility with:” da “NONE” a “MYSQL40”.
4) Scrolla fino in fondo e clicca “GO”.
Salve Giovanni,
ho fatto la migrazione, ma l’unico problema è che nel sito mancano alcune icone o altro, per esempio le icone degli stati dell’ordine, oppure l’icona del campo della ricerca nel sito (la lente d’ingrandimento), le icone di alcuni plugin, o se vedi nel footer, anziché delle freccette ci sono dei quadratini vuoti, e ce ne sono molte altre.
La migrazione la dovrei aver fatto correttamente, ma ora sto avendo questo problemino, consigli?
ho migrato salefifacoins.com su test.fifacoinsea.com
Grazie mille.
Ciao Andrea, ho dato un occhio al sito: le icone del footer non escono perchè non ci sono nel server al path indicato nell’HTML, che punta al vecchio dominio (fai “ispeziona elemento” sulle immagini non visualizzate, vedrai che l’URL è sbagliato).
Probabilmente non è stata eseguita bene la funzione di sostituzione del vecchio URL con il nuovo all’interno del database. Hai provato il plugin Duplicator per migrare il sito? E’ sicuramente più semplice!
ciao Giovanni, ti ringrazio per la preziosa guida! Il mio problema è forse banale ma non ho molta esperienza. Ho due domini su aruba, dominiovecchio e dominionuovo. Ho salvato il DB del vecchio sul mio HD , ho installato wordpress sul nuovo con il tema usato sul vecchio. Nel pannello MySql ho scelto il DB (segnato nel file wp config) ed ho fatto “importa” puntando al vecchio DB.Me lo carica ma quando digito l’url mi dice “benvenuto….devi installare wordpress…etc etc) . Di sicuro C’è qualcosa che sbaglio nel momento dell’importazione DB ! Ho provato a importare il DB in uno dei 5 a disposizione e poi cambiare il WP config ma non funziona. Non so se puoi aiutarmi…Grazie!
Ciao Cristina, il problema è molto semplice. Se quando apri WP ti dice di procedere a connettere il DB vuol dire che le info nel file wp-config sono errate. Prova a ricontrollare l’host, nome DB e password!
PS: ricordati anche di sostituire nel vecchio DB l’URL del sito con quello nuovo!
Ho controllato e wp-config del nuovo sito ha questi dati:
DB_NAME’, ‘Sql879892_2′
DB_USER’, ‘Sql879892′
DB_PASSWORD’, ‘u6xxxxxxxx
DB_HOST’, ‘62.149.150.236
il vecchio aveva:
DB_NAME’, ‘Sql782237_1
DB_USER’, ‘Sql782237
DB_PASSWORD’, ‘szxxxxxxx
DB_HOST’, ‘62.149.150.220
Io ho importato Sql782237_1 nel nuovo sito ma non ho cambiato nulla nel wp-config perchè pensavo non servisse. devo cambiare questo dato o anche il resto? Grazie!!
Ciao Cristina, a quanto pare i problemi possono essere che:
1) la copia del db vecchio db nel nuovo non è stata eseguita correttamente
2) i dati di accesso inseriti nel file wp-config non sono corretti
altrimenti vedresti il sito funzionante – non ti dovrebbe mostrare la pagina di setup aprendo il sito.
Se vedi la schermata di setup vuol dire che:
1) non trova dati nel database che gli hai indicato
2) non trova il database
3) database name, user e pw non sono corretti
grazie Giovanni, le proverò tutte…..e speriamo di riuscire ;(
Ciao Giovanni, articolo utilissimo e sito fantastico. un po’ alla volta me lo leggerò tutto. ora ti sottopongo la mia problematica: la scorsa settimana ho effettuato un cambio hosting per il mio sito passando da altervista a siteground. ora mi ritrovo ovviamente con due siti pressoché gemelli ma le visite arrivano solo sul vecchio sito ( giustamente) ora secondo te quali dovrebbero essere i miei prossimi passaggi per ottenere l’indicizzazione del nuovo sito? devo eliminare il vecchio? devo effettuare qualche redirect?
grazie mille in anticipo
Ciao Luca, grazie per il commento.
Per eseguire una corretta migrazione SEO ti consiglio di leggere questa guida https://www.evemilano.com/migrazione-seo/ – spiega passo dopo passo tutti gli step da seguire per mantenere ranking e indicizazione di tutte le pagine.
In bocca al lupo!
Ciao Giovanni,
ho seguito le tue magnifiche istruzioni per trasferire un sito WP da un dominio a un altro. Quando visializzo il sito mi appare con il template giusto e con i plug-in installati ma i contenuti non ci sono è come se dovessi iniziare da zero!?! Preciso che il database è stato trasferito è in prima battuta non lo digeriva ho dovuto escludere la parte:
“Mi segnalano che alcuni providers non permettono l’importazione del database se nella prima riga dello stesso si usa il comando CREATE. In pratica il provider vieta la creazione di nuovi database e bisogna utilizzare/sovrascrivere quello già esistente. Per risolvere il problema vi basterà modificare la prima riga del database inserendo il comando USE (al posto di CREATE) e il nome del database fornito dal provider ”
Grazie mille per la risposta
Boris
Ciao Boris grazie mille per aver lasciato queste info :D
Ciao oggi ho cancellato inavvertitamante da Tophost il mio sito (a causa di un add in Photo Gallery che mi mappava erroneamente una directory), perdendo anche i dati del mio blog wordpress, ho aperto un ticket non fanno backupm e nemmeno io l’ho fatto, c’è qualche altro modo per tentare di recuperarlo ? Grazie mille
Ciao Giorgio mi dispiace per il tuo blog :( Senza un database di backup è dura ma se hai calma e fortuna puoi recuperare le pagine usando la cache di Google e Bing e andare di copia-incolla. Per trovare la cache digita nei 2 motori di ricerca la stringa “cache:www.evemilano.com” senza virgolette e con il tuo sito. Se Google ha in memoria quella pagina ti mostrerà la sua versione in cache. Però fai in fretta perchè la cache non dura per sempre se hai i 404 attivi!
Potrebbe tornarti utile anche https://archive.org/web/
Giovanni ciao e complimenti per l’articolo! Ti scrivo in merito a un problema che sto riscontrando con un sito WordPress che gestisco: dopo Aruba che non supportava piu’ in maniera efficiente il sito (grossa mole di visite) abbiamo migrato su Siteground l’hosting, ma il proprietario del sito, probabilmente per una offerta, ha spostato il solo dominio su register. Mantenendo il nome del sito. Problema: i ragazzi di Siteground hanno spostato tutto e tutto funziona ma il sito non si aggiorna! Riusciamo a vederlo corretto con una VPN… O con la connessione 3g, ma se aggiorniamo o visualizziamo il sito con la Wifi il sito è aggiornato a due giorni fa’! E lo vedono cosi anche tutti gli altri utenti…. Cosa ci sfugge?
Buongiorno Valentina, premesso che non mi è molto chiara la situazione ma la cosa che verificherei al più presto è l’impostazione del DNS, sia su Aruba sia su Siteground. Entrambi devono punare all’IP del nuovo hosting. La situazione è strana perchè se avete fatto correttamente il trasferimento di dominio non è possibile che ce ne siano 2 attivi.
Cerco di specificare: l’hosting e il dominio erano su Aruba. Poi il solo dominio è stato passato a Register mentre il solo hosting su siteground. Ieri dal pannello di controllo di Register abbiamo puntato i dns su siteground e dalla loro assistenza dicono siano puntati bene. Da quel momento, quando pubblichiamo qualcosa solo chi non ha mai visto il sito vede l’aggiornamento mentre chi aveva visitato precedentrmente il sito lo vede solo se aggiorniamo il sito sotto una vpn. (è molto strano e complicato e non stiamo piu’ capendo molto neanche noi)
Probabilmente dovete solo aspettare la propagazione del nuovo DNS e pulire la cache dei browser che hanno già visitato il sito.
Salve,
avrei una domanda. Ho un sito realizzato su Joomla anni fa, in uno dei 5 database resi disponibili da aruba. Adesso mi è stato chiesto di rifare il sito in wordpress e per mantenere il vecchio sito (ancora online) con i dati, ho istallato wordpress in uno dei 4 database rimanenti. Come faccio ad assegnare al dominio del sito un nuovo database?
Ciao Laura grazie per il commento. Il dominio non si associa al database ma all’FTP. Poi nel file di configurazione di WordPress dirai dove risiede il database, ma a livello di dominio non devi fare niente.
Salve desidero trasferire il mio sito da wordpress.com dove ho acquistato il dominio (per intenderci quello da 15/17 euro l’anno) a wordpress.org, perdo rating e indicizzazione nei motori di ricerca? Perdo anche gli iscritti alla newsletter, commenti ed eventuali statistiche? Mi conviene comunque lasciare on line entrambi i siti? E’ una cosa fattibile? Grazie
Ciao Marta grazie del commento. WordPress.com ha una funzione per redirezionare il sito verso un hosting esterno, la funzione la trovi qui https://wordpress.com/domains/add/site-redirect
Spero di averti aiutato, a presto!
Salve, innanzitutto volevo ringraziarti per la guida.
Ho riscontrato un problema dopo la migrazione, se di problema si può parlare, probabilmente è dovuto al fatto che sono poco esperto con wordpress.
La migrazione è andata a buon fine e il sito funziona correttamente.
Tuttavia le modifiche alle pagine, ecc che faccio nel pannello di gestione del sito riesco a vederle solo sul vecchio indirizzo, su quello nuovo invece le pagine restano uguali a come erano dopo la migrazione.
Ho notato che l’admin toolbar che si vede sul sito dopo che hai effettuato l’accesso come admin non la vedo sul nuovo indirizzo mentre su quello vecchio si.
Ho pensato che potrebbe essere un problema di pannello di controllo, sai dirmi di più?
Grazie in anticipo.
Buongiorno Raffaele, grazie per il commento. Il suo non è un problema tecnico ma di aspettative :) la migrazione infatti non è una “sincronia a doppio senso” tra due siti. Quello che pubblica su un sito resta in quel sito, non viene “spostato” e pubblicato in automatico nel nuovo sito. Lo stesso concetto vale per la barra di amministrazione: se lei accede come admin ad un sito, non si trova automaticamente loggato come admin anche nell’altro sito, deve accedere in entrambi.
Inoltre mi sembra strano che lei possa visualizzare le pagine del vecchio sito, perché se ci fosse una migrazione corretta in essere verrebbe redirezionato sul nuovo sito.
Cordiali saluti.
Ciao Giuliano,
anche a distanza di anni la tua guida è apprezzatissima :)
Grazie!
Volevo segnalarti un refuso (una frase identica scritta due volte) nella frase “Una seconda alternativa per risolvere il problema del nome database è eliminare la riga nel DB (una delle prime) con scritto CREATE (il DB non va creato) e sostituire la riga poco sottoeliminare la riga (una delle prime) con scritto CREATE (proprio perché il DB non va creato) e sostituire la riga con scritto USE inserendo il nome del DB fornito dal provider.”
Buon lavoro
Grazie mille Paola :D
ciao Giovanni,
ottima guida, ti pregherei di indicare se compatibile per una installazione WordPress MU (multisito) con tema child di Canvas WooThemes.
Nel caso che dovrei risolvere è stato dimenticato di attivare l’aggiornamento automatico del tema (Canvas WooThemes), pertanto negli anni sono state aggiornate le versioni di wordpress e plugin… ma non le versioni del tema Canvas rimasto alla versione 5.5.7 invece dell’attuale 5.11.4. Pertanto, sostituendo la versione 5.5.7 con la 5.11.4 il tema child alla base del multisito non funziona più (le personalizzazioni spariscono e si vede abbastanza male). Ho chiesto all’assistenza life-time di WooThemes di sistemare il sito web anche “lasciando perdere” le personalizzazioni del tema child (possiamo adattarci all’estetica del tema Canvas standard), riteniamo importante l’aggiornamento del tema alla versione 5.11.4 anche per evitare possibili malfunzionamenti con il plugin WPML (aggiornati).
Per ottenere il supporto WooThemes è necessario mettere on line il sito web con Canvas 5.11.4 (e relativi malfunzionamenti grafici) in questo modo risultano visibili e possono essere sistemati: al tempo stesso vorremmo lasciare l’attuale sito web on-line (con tema Canvas 5.5.7 che si vede bene: per questo mi hanno suggerito il plug-in WP Staging, che però non funziona con WordPress MU (non ho trovato nulla di analogo).
Pensavo quindi di duplicare-migrare il sito in una altra directory “test” seguendo la tua interessante guida: è una procedura comunque più faticosa ripeto alla attivazione di un plug-in che gestisce la configurazione “test”, ma se non ci sono particolari controindicazioni procedo,
grazie, Esco
Buongiorno sig. Esco, grazie per il commento.
Questa guida è compatibile con WordPress MU, il tema usato è indifferente. Il mio consiglio è quello di affidarsi ad un webmaster competente per evitare perdite di tempo e soprattutto di denaro. Un professionista le migrerebbe il sito in 15 minuti.
In quanto al tema stesso, se è stato modificato/personalizzato nello stile, chiaramente nel momento che lo aggiorna perde le personalizzazioni. Questo perché le personalizzazioni non sono state gestire con plugin custom o child-theme, come sarebbe dovuto essere. Dovrebbe identificare e isolare le personalizzazioni, per poi riportarle nel nuovo tema aggiornato. Anche tale procedura è facilmente eseguibile da un web master di nome e di fatto.
A presto e buon lavoro!
Buon pomeriggio, Giovanni.
Mi sto accingendo a fare il passaggio, poichè ero ospite di un network, riceverò i file per il backup (file dati e file database) I file non so se verranno dati in f.to zippato o tramite ftp(sto parlando di più di 800 articoli)
sarà sufficiente seguire la tua guida per procedere al trasferimento?
In particolare, il dominio rimarrà uguale. quindi dal punto 4 passo al punto 6 direttamente?
grazie per la risposta.
Buongiorno Cinzia, se il dominio rimane lo stesso deve solo caricare file via FTP e database nel nuovo hosting ed infine cambiare il puntamento DNS verso il nuovo IP, nulla di complicato.
A presto!
Buongiorno,
vorrei tentare l’avventura di spostare un sito realizzato con wordpress da un provider ad un altro e ho trovato questa sua ottima guida. Ho però un problema che spero possa avere soluzione:
all’interno degli articoli generalmente ci sono dei link che rimandano a file .pdf archiviati nelle risorse e ognuno di essi naturalmente all’interno degli articoli è memorizzato con il suo indirizzo assoluto che è legato al provider (http://nomeutente.nomeprovider.com/blog/wp-content/uploads/2009/06/programma.pdf) e dopo la migrazione la prima parte dovrebbe essere riferita al nuovo provider. Come si può risolvere il problema senza intervenire record per record?
Grazie.
Buongiorno Salvo, per redirezionare su un nuovo dominio mantenendo tutto il resto inalterato puoi usare questa regola:
RewriteCond %{HTTP_HOST} ^DomainA.com
RewriteRule ^(.*) http://DomainB.com/$1 [P]
Per maggiori info ti indico questa guida per le redirezioni/Regex/htaccess
Salve,
seguendo quanto indicato, trasferisco il backup dei files e del db da un server ad uno nuovo cambiando il dominio. Tutto procede e, in svariate ore di FTP tutto viene trasferito.
Quando provo pero’ il sito, nella sidebar tutti i widget sono spariti tranne uno (il primo). Se provo ad aggiungerli nuovamente non si vedono; devo cancellare il primo (quello che si vede) e si vede quello nuovo inserito a mano. In uno di questi widgets, di tipo testo, c’e’ una slider e non funziona. Guardo il relativo plugin e non ci sono piu’ i campi delle varie immagini di TUTTE le slider create. Tutte le opzioni del tema sono perse, file del logo, custom css ecc. ecc. e non riesco a caricarle prendendo il relativo file prodotto dal sito originale. Reinserendo a mano funziona.
Visto che il sito ha tantissimi dati al suo interno e innumerevoli pagine, non posso pensare di controllare tutto per scoprire altri possibili problemi e, soprattutto, scoprirli dopo che e’ stato effettuato il trasferimento del dominio e del sito di produzione perdendo quindi i dati originali che ora posso copiare.
Il plugin Duplicator termina indicando errore senza pero’ specificare il motivo nel file di log che semplicemente si interrompe; penso che possa essere un problema di limiti del provider register.it, (vedo un problema di errori di IO limits) e motivo per il quale si sta cercando di trasferire il sito.
Che posso fare? Ho fatto gia’ diverse prove e ogni prova comporta piu’ di una giornata tra backup e ripristino dei dati (linea FTTH 50Mbs down/20Mbs up)!
Grazie
Ciao Fabrizio, questo genere di problemi sorge quando si usano temi o plugin di bassa qualità o sviluppati male che salvano le opzioni in modi non consoni e che non rispettano le linee guida di sviluppo di WordPress. Non ti resta che installare da zero oppure fare un lavoro certosino di find/replace nel database se vuoi tenere quel tema ma anche così non è detto che funzioni. Alcuni hosting provider offrono l’opzione di migrazione e potrebbe essere più efficace che fatto a mano.
Ciao Giovanni,
grazie per la risposta. Non potendo provare ulteriormente in ambiente di test ti chiedo: visto che il sito cambierà di server ma non di nome del dominio, ci saranno gli stessi problemi che sto incontrando oppure c’è qualche possibilità che funzioni?
Grazie
Ciao Fabrizio, i problemi che incontri credo siano dovuti al cambio di URL. Se cambi solo server mantenendo URL e dominio invariati non credo ci siano complicazioni di questo genere. Fammi sapere come va, a presto e buon lavoro!
Salve, premesso che sono una neofita, mi piacerebbe esportare il mio sito, piccolino, da wp.org a blogger, so che c’è la funzione “esporta” sulla bacheca di wp, ma è possibile farlo mantenendo l’URL del mio blog, facendo in modo di non perdere quei pochi soldini guadagnati?
nel caso il mio sito è: bio-vegsalus.com
Grazie
Buongiorno Alessandra, grazie per la domanda. E’ possibile fare quanto chiede, un po macchinoso ma si può fare.
Una precisazione – WordPress.org non hosta siti, può solo scaricare il sorgente su ORG. Lei intende un sito web hostato esternamente oppure un blog su wordpress.com?
Su WordPress.com dovrebbe puntare il suo dominio premium esternamente, ai CNAME di Google come indicato in questa guida. Poi imposta blogger associando il suo blog al suo nuovo dominio.
A presto!
A me risulta che WP (il blog) non permetta l’accesso via ftp… almeno a me non lo fa fare
Buonasera Gian. Se parli di WordPress.com, be non è il caso dell’articolo. In questa guida si parla di siti WordPress in hosting. WordPress.com (diverso da WordPress.org) non è un hosting vero è proprio, ma una piattaforma di blogging. Per migrare da WordPress.com devi acquistare un dominio premium e successivamente trasferirlo su un registrar con hosting.
buongiorno,
ho la necessità di trasferire un sito wordpress realizzato da pochi giorni (poche decine di post pubblicati) da Aruba business ad Aruba. Il webmaster mi dice che l’operazione richiede una settimana di lavoro, periodo durante il quale il sito non sarà on line.
leggendo quanto hai scritto, mi sembra molto strano. è possibile che il webmaster stia, diciamo così, facendo resistenza (su aruba business sono ospitato nel “suo” spazio, mentre su Aruba avrei tutte le credenziali nelle mie mani).
grazie mille della cortese risposta
Buongiorno Aldo, grazie della domanda. Non vorrei contraddire quanto le ha detto il suo webmaster dato che non ho molte informazioni, ad esempio non so se deve migrare solo un sito WordPress o se ci siano altri applicativi che girano sulla stessa macchina.
Se dovesse solo migrare hosting al sito web, senza cambiare altro, è una operazione abbastanza rapida: spostare file e database e cambiare puntamento DNS potrebbe richiedere 30 minuti, più o meno in base al volume di file da spostare.
A disposizione per ulteriori chiarimenti, grazie e buon lavoro.
Buongiorno Giovanni, e grazie a lei della risposta!
No, non ci sono altri applicativi. C’è solo il sito wordpress. Naturalmente la situazione è piuttosto imbarazzante, dato che io non ho le competenze tecniche per contraddire quanto dice il webmaster…
Dovrò cercare di risolverla con molta diplomazia ;-)
Buona giornata e complimenti per il suo ottimo lavoro,
Aldo
Grazie al vostro articolo ho migrato il mio sito e funziona tutto perfettamente!
Grazie Daniele per aver lasciato questo commento ;)
Ciao Giovanni, ottima guida, esaustiva e chiara! Grazie. Solo una domanda: non riesco ad entrare nel nuovo fronte admin. Cioè la migrazione è andata a buon fine e funziona tutto correttamente, ma non riesco ad entrare come admin nel sito. Quale pensi sia il problema? Grazie mille! :)
Ciao Vincenzo, in che senso non riesci, che errore incontri esattamente? Hai provato a svuotare la cache del browser?
Ciao Giovanni, mi da
La pagina non funziona al momento non è in grado di gestire la richiesta – HTTP ERROR 500
Ho provato a rieditare il file htaccess ed anche l’index.php
L’hosting è Aruba. Ho messo il sito sulla root e mentre prima dava errore di collegamento database ora non lo dà più (ho sistemato il wp-config) ma viene un più generico errore 500
Non so a quali dei due file sopra imputare il problema.
Hai provato a resettare i permessi FTP su Aruba? Spesso è quella la causa dell’errore 500.
Salve Giovanni,
ottimo articolo, grazie!
Sono riuscita a fare il trasferimento seguendo la guida passo passo e il sito funziona.
Non capisco, però, perché il nuovo sito venga reindirizzato sul vecchio, cioè se io entro sul nuovo dominio, nella barra del browser compare il vecchio. Ho dimenticato qualcosa?
Ciao Valeria, se vedi ancora il vecchio sito mi viene da pensare che la migrazione non sia andata bene. Riesci a scrivermi il vecchio e nuovo dominio così posso dare un occhio?
Intanto complimenti perchè la guida è chiara!
Mi son mosso come da note!
Vecchio sito wp 3.0 mi pare, del 2010… vorrei ricaricare i contenuti per poi fare un nuovo sito.
Devo migrare a nuovo server dello stesso provider.
1) esporto DB
2) scarico ftp
3) creo nuovo database su nuovo server
4) svuoto il database
5) sul DB elimino la riga CREATE e tengo USE modificando il nome database
6) importo il DB
7) carico via ftp i sito compreso htaccess
8) modifico il file config
9) rinomino la cartella plugin e il tema offplugin offtema
10) importo file
11) modifico dns sul file host affinchè l’ip del nuovo server venga raggiunto dal dominio
Vedo solo schermata bianca!
Hai da suggerire qualcos’altro?
Non ho idee chiare su cosa altro potrebbe essere andato storto!
Ciao rinomina la cartella plugin così vedi se è colpa di qualche plugin. poi salva di nuovo i permalink così resetti il file htaccess. Di solito questo basta a capire il problema.
Faccio come hai scritto, ogni volta che da remoto lo porto al mio server locale, non funziona al 100%, ci sono i link alle immagini che sono sbagliati.
Alcune funzionalità del tema non vanno.
Funziona tutto solo se al file hosts metto 127.0.0.1 vecchiosito.it.
Con Joomla non ci sono problemi
ciao Salvatore, se metti il sito in locale devi cambiare il file host, è normale.
Salve,
ho spostato il sito wordpress da un dominio ad un altro mantenendo lo stesso hosting.
tutto sembra funzionare a parte il fatto che non mi risultano più i plugin presenti in precedenza e non mi consente di aggiungere nuovi contenuti come le immagini e inserire nuovi plugin.
Cosa può essere successo e come posso rimediare.
Grazie in anticipo
Cordialmente
Denise
Buonasera Denise, da quello che dice potrebbe essere una questione di permessi FTP. Che errore le restituisce WordPress?
Ciao Giovanni,
siccome sto lavorando su diversi siti nello stesso momento, ho inserito ogni sito in una sottocartella. Ora mi accingo a pubblicare il sito “ufficialmente”, quindi devo trasferirlo nella directory principale di un altro dominio e dello stesso hosting. Come mi devo comportare, visto che è la prima volta che lo faccio? Grazie!
Ciao Mara, grazie per il commento.
La prima cosa da fare è impostare una regola di redirect 301 dal folder che contiene il sito alla root del web server. Non posso darti la regola senza sapere con che web server lavori, IIS è diverso da Apache che è diverso da Nginx :)
Io cercherei su Google:
[nome del web server] redirect from subfolder to root
Se mi puoi dare maggiori dettagli provo ad aiutarti.
Ciao Giovanni. Volevo sapere un’informazione. È possibile trasferire un sito internet (mantenendo lo stesso dominio e hosting Aruba) sulla piattaforma WordPress? Il sito internet a da trasferire non è fatto in WordPress. Esiste una procedura?
Ciao Nicola, è una domanda molto generica.
Dipende come è fatto il sito di origine, magari per WordPress ci sono dei plugin apposta per importare i contenuti dal tuo CMS.
Il sito usa una piattaforma realizzata da zero diversi anni fa dal programmatore che l’ha creato. Non usa PHP.
Ciao Nicola, difficilmente un sito web custom si può migrare facilmente con plugin in WordPress.
O trovi un webmaster sveglio che può scriptare la migrazione (ad esempio con Python e le API di WordPress) oppure ti tocca fare copia incolla…
salve, ho seguito i passi ma esce questo “Front to the WordPress application. This file doesn’t do anything, but loads
* wp-blog-header.php which does and tells WordPress to load the theme.”
Per caso è dovuto al fatto che il vecchio sito era http mentre su questo hosting è https? Ho fatto la sostituzione dei link del database facendo cerca “nomesito.altervista.org” e sostituisci con “www.nomesito.info”. Quale potrebbe essere il problema? Grazie
Ciao Luca,
difficile trovare il problema senza sapere nulla del setup del sito, potresti iniziare leggendo post di chi ha risolto il tuo problema:
https://it.wordpress.org/support/topic/errore-di-accesso-al-sito/
https://it.wordpress.org/support/topic/messaggio-di-errore-di-wordpress/
Ciao Giovanni, nonostante esegua migrazioni da anni di siti web, ogni tanto ho qualche lapsus e vengo a vedere la tua guida.
Grazie mille è sempre perfetta :-)
Ciao Simone! Grazie per il commento e felice di (ri)vederti qui :D