|
Come fare la migrazione di un server Drupal |
|
|
|
|
Scritto da Ivan Piffer
|
|
martedì 14 luglio 2009 |
|
di
Normalmente lavoro ai miei progetti sul portatile (usando macchine virtuali in vmware) e di conseguenza ho il problema della messa online.(vabbe ... questo problema e' di tutti se si separa l'ambiente di sviluppo dall'ambiente di produzione :) :) ).
Come spostare il server drupal su una macchina diversa? Diverse opzioni... l'ultima e' quella usata. Ho guardato se esistevano moduli che facessero il lavoro sporco, ma...
OPZIONE 1
- installata l'aggiunta "backup e migrate"
- l'esecuzione dell'aggiunta crea un dump del db di drupal che si salva sulla macchina client.
- ABBANDONATO perche' fa il backup del solo database... e serve una aggiunta per farlo? (immagino sia per che non ha un accesso con shell o un webmin)
OPZIONE 2
- installata l'aggiunta "snapshot" che dovrebbe permettere il backup anche del sito (parte web);
- l'aggiunta non funziona se nel file settings.php (sites/default/settings.php) di drupal la variabile db_url è stata modificata in array (tipico se drupal ha connessioni con altri db);
- Per risolvere il problema la nel file snapshot.inc cambiare
$url = (object)parse_url($GLOBALS['db_url']); IN
$url = (object)parse_url($GLOBALS['db_url'][0]);
Nel mio caso ho messo zero [0] perche' la connessione di default di drupal e' nella prima posizione dell'array
- bisogna installare un'altro modulo chiamato drush (http://drupal.org/project/drush) DA STUDIARE!
- drush is a command line shell and Unix scripting interface for Drupal, a veritable Swiss Army knife designed to make life easier for those of us who spend some of our working hours hacking away at the command prompt.
- l'installazione e' semplice e basta seguire i punti scritti nel readme:
For Linux/Unix/Mac:
1. Untar the tarball into a folder outside of your web site (/path/to/drush)
2. Make the 'drush' command executable:
$ chmod u+x /path/to/drush/drush
3. (Optional, but recommended:) To ease the use of drush,
- create a link to drush in a directory that is in your $PATH, e.g.:
$ ln -s /path/to/drush/drush /usr/bin/drush
-
ABBANDONATO perche' ci stavo mettendo troppo. Magari la riprendo con un po' piu' di calma per capire drush.
OPZIONE 3 LA versione scratch e quella che funziona sempre
In fin dei conti cosa bisogna fare? Il backup di database e il backup di un ramo di apache :).
-
usando webmin ho fatto il backup del database di drupal
- usando il seguente comando ho fatto il backup di apache
tar -czf /path/to/backup.tar.gz /path/to/wwwdir/html
- potete usare webmin anche per il backup del sito web usando il modulo di sistema "Filesystem Backup"
-
ho copiato i files sul server remoto e decompressi;
- per la parte web basta decomprimire il tar.gz relativo e modificare il file settings.php;
- per la parte database bisogna creare gli utenti corretti e ripristinare il db con mysql
- PS: nella parte web bisogna stare attenti che l'apache sulla nuova macchina abbia il rewrite attivo (se usato in drupal :) )
|
|
Ultimo aggiornamento ( martedì 14 luglio 2009 )
|