Spostare un sito Joomla
Le maggiori difficoltà incontrate dagli studenti dei nostri corsi Joomla riguardano l’hosting. Infatti, mentre la creazione e configurazione del sito sono piuttosto user-friendly grazie all’ottima interfaccia amministrativa di Joomla, la gestione dell’hosting richiede altre competenze. Inoltre, non sempre i provider forniscono un servizio adeguato – o perchè i server non sono pienamente compatibili con questa tecnologia, o perchè l’assistenza tecnica lascia a desiderare. Lo sapete già, vero, che noi offriamo il servizio di hosting per Joomla? 🙂
Tra le difficoltà incontrate, la prima è quella relativa allo spostamento del sito tra due provider, oppure tra il proprio PC locale e il server definitivo. Vediamo quindi di dare qualche suggerimento in merito.
Un sito Joomla si compone di due principali elementi:
- le pagine del sito, tra cui i file installati inzialmente ma anche eventuali estensioni, nonchè immagini e documenti caricati da noi;
- il database del sito, che contiene tutti i dati variabili (testi, utenti, prodotti…)
Per spostare un sito, quindi, è necessario trasportare questi due elementi.
Nessuna installazione
Prima di tutto chiariamo che nello spazio web di destinazione NON è necessario installare un sito Joomla per poter poi caricare i nostri dati. Tale spazio anzi deve essere vuoto, per fare spazio al sito che abbiamo già preparato altrove o sul nostro PC locale.
Pagine del sito
Le pagine di un sito Joomla sono dei normali file come per qualsiasi altro sito: PHP, HTML, immagini, e così via. Per spostare quindi tali pagine, di solito si lavora via FTP verso il provider. Ad esempio per caricare un eventuale sito locale, ci collegheremo al server in FTP tramite i dati forniti dal provider, individueremo la cartella principale del sito, e caricheremo tutti i file.
I problemi che sorgono in questa fase sono:
- individuare la cartella corretta per il sito. A seconda del provider, collegandovi in FTP potreste vedere diverse cartelle. La cartella effettivamente destinata a ricevere il sito di solito si chiama “sito”, o “httpdocs”, o “htdocs”, o “www”, o “web”… non c’è una regola. Nel dubbio, contattate il provider.
- mischiare con dati esistenti. Una volta individuata la cartella, verificate che sia vuota. Se siete nel dubbio, prima di cancellarne il contenuto scaricatene una copia.
- errori di caricamento. Alcuni file potrebbero essere caricati incompleti o non caricati del tutto. Usate un client FTP decente (tipo FileZilla) e assicuratevi che non vengano segnalati errori di caricamento.
Database
Per amministrare il database, lo standard presso praticamente tutti i provider è quello di utilizzare phpMyAdmin. Trattasi di uno strumento web che ci offre una gestione grafica dei vari database MySQL. Se usate uno strumento per creare un web server locale, solitamente è incluso anche phpMyAdmin.
Le operazioni per creare una copia del db (database) associato a Joomla sono quella di selezionarlo dall’elenco ed esportarlo. Questo crea un file con tutte le istruzioni SQL corrispondenti ai dati presenti.
Sul server di destinazione, sempre con phpMyAdmin, con la funzione di importazione sarà possibile caricare tali dati.
In questa fase bisogna fare attenzione a:
- il nome del db potrebbe essere diverso. Nel file esportato, di solito viene inserito anche il nome del db da creare e selezionare, ma se il provider ci ha già dato un db vuoto da occupare, dovremo prima aprire il file di esportazione (con un qualunque editor di testo) e modificare o togliere tali informazioni
- il db potrebbe essere già occupato. Anche in tal caso sarà necessario crearne una copia di sicurezza – se volete – e poi svuotarlo, per fare posto ai nuovi dati.
Piccole ma indispensabili altre modifiche
Tra un ambiente e l’altro – anche tra locale e server – alcune piccole e importanti configurazioni cambiano. Prima che il sito trasportato funzioni, dobbiamo modificare a mano il file configuration.php presente nella cartella principale del nostro sito. Questo può essere fatto scaricandolo via FTP, modificandolo, e poi ricaricandolo.
I parametri più importanti sono:
- $host : il nome del server che ospita il database
- $user : il nome dell’utente che accede al database
- $password : la password dell’utente che accede al database
- $db : il nome del database
Se questi parametri non sono configurati correttamente, il sito non funziona. Altri due parametri da modificare sono:
- $log_path : il percorso del file di log
- $tmp_path : il percorso dei file temporanei
In particolare, se $tmp_path non è giusto non riuscirete a installare estensioni.
Troppo complicato?
Se tutto questo è troppo complicato, esistono alcune alternative.
- Creare il sito direttamente sul server. In questo modo non dovrete spostarlo una volta completato. A volte non abbiamo questa opzione, ad esempio se stiamo cambiando provider siamo costretti al trasporto.
- Affidarvi a un provider che vi aiuta in queste operazioni. Devo aggiungere altro? 🙂
- Usare JoomlaPack. Questa estensione rende più agevole l’esportazione e l’importazione di un sito Joomla (infatti è particolarmente diffusa per il backup), questo però significa che sul server di destinazione dovremo aver già installato un sito Joomla “neutro” solo per poterci installare JoomlaPack e usarlo per il ripristino. Abbiamo il vantaggio di usare un solo strumento, ma la procedura è un po’ più lunga. Update: successivamente alla scrittura di questo articolo, abbiamo avuto modo di approfondire ulteriormente JoomlaPack, e verificare che il ripristino è più semplice di quanto descritto, come specifica Rob nei commenti. Di conseguenza abbiamo scritto in seguito un altro articolo dedicato specificatamente a descrivere la modalità di utilizzo di JoomlaPack.
Alex
bella………siete i migliori
Francesco
@Alex:
grazie mille, lieti di essere utili 🙂
Rob
Diciamo che con JoomlaPack il restore di un sito è MOLTO più semplice, in quanto il trasferimento del sito con tutti i dati viene effettuato con una nuova installazione, (in quanto il backup fatto con Joomlapack, contiene anche la cartella /installation che andrà sul nuovo dominio)
Rob.
Francesco
@Rob:
hai ragione, infatti in un articolo successivo ( https://gibilogic.com/2009/10/salvare-e-ripristinare-un-sito-con-joomlapack/ ) abbiamo descritto più nel dettaglio la procedura di funzionamento di JoomlaPack. Ora ho corretto anche questo articolo in modo da rimuovere la descrizione inesatta.
passaggio da altervista a ovh - - AlterVista
[…] […]
Mario
Salve, ho una domanda da fare
anch’io sapevo che si dovesse modificare il file configuration.php per far coincidere il database con il sito dove questo è stato trasportato, ma non ho capito perchè stavolta a differenza delle altre volte, spostando il mio sito da un dominio all’altro e NON spostando il database, il sito funziona lo stesso, con tutti gli articoli al suo posto e tutto perfetto, com’è possibile?
Francesco
@Mario:
evidentemente il db configurato è pubblico e quindi raggiungibile anche dal nuovo server. Sicuramente non è “localhost”. Quindi il tuo sito sta lavorando ancora sullo STESSO database di prima. Attenzione che – se hai cambiato provider – prima o poi te lo spegneranno, immagino.