Fare il backup di un sito e caricarlo su un altro server ftp
29 Dicembre 2011
In alcuni casi, specialmente quando bisogna spostare un sito di grosse dimensioni presso un altro server si può risparmiare tantissimo lavoro utilizzando un semplice script PHP.
Mettiamo il caso di dover trasferire un grosso ecommerce con ad esempio 2GB di file, la procedura standard (a meno che non si abbia accesso root ad entrambi i server) è quella di scaricarsi prima tutti files tramite un normale client ftp, con un attesa in caso di connessione adsl media di almeno 2/3 ore.... ma non finirebbe qui.... ci vorrebbero probabilmente altre 4/5 ore per caricarli poi sul nuovo server.... un disastro.
Grazie allo script in basso sarà possibile effettuare un backup della cartella root del proprio sito (o comunque di qualsiasi percorso si voglia) e di caricarlo direttamente via ftp sul nuovo server.
Una volta caricato il backup sul nuovo server basterà semplicemente scompattarlo per riavere tutti i files al proprio posto, natuarlmente bisognerà fare attenzione a reimpostare i giusti permessi.
Chiaro che per un sito dinamico sarà necessario importare anche un backup del proprio database, questo sarà però argomento per un altro post.
Mettiamo il caso di dover trasferire un grosso ecommerce con ad esempio 2GB di file, la procedura standard (a meno che non si abbia accesso root ad entrambi i server) è quella di scaricarsi prima tutti files tramite un normale client ftp, con un attesa in caso di connessione adsl media di almeno 2/3 ore.... ma non finirebbe qui.... ci vorrebbero probabilmente altre 4/5 ore per caricarli poi sul nuovo server.... un disastro.
Grazie allo script in basso sarà possibile effettuare un backup della cartella root del proprio sito (o comunque di qualsiasi percorso si voglia) e di caricarlo direttamente via ftp sul nuovo server.
<?php #Directory del backup $dir = '/home/www/account/htdocs'; #Percorso completo del backup compresso $filename = 'backup' . date("Ymd") . '.tar'; $ftp_server = 'ftp.miodominio.xx'; //Server FTP esterno $ftp_username = 'bottegal'; //Username Server FTP esterno $ftp_password = 'aG6yjNM67'; //Password FTP server esterno if(system("tar cvf $filename $dir")){ $cn_id = ftp_connect($ftp_server); $login_result = ftp_login($cn_id, $ftp_username, $ftp_password); if (($cn_id) || ($login_result)) { $upload = ftp_put($cn_id,'backup'.date("Ymd").'.tar',$filename,FTP_BINARY); } ftp_close($cn_id); } ?>
Una volta caricato il backup sul nuovo server basterà semplicemente scompattarlo per riavere tutti i files al proprio posto, natuarlmente bisognerà fare attenzione a reimpostare i giusti permessi.
Chiaro che per un sito dinamico sarà necessario importare anche un backup del proprio database, questo sarà però argomento per un altro post.
Pubblicato in:
PHP
Tutorials Correlati
Creare copie di backup con cPanel tramite Wizard
Per creare una copia di backup del proprio sito Web, uno dei sistemi pił di...
Lascia un commento
Categorie
- Apache (9)
- cPanel (2)
- Database (2)
- Drupal (1)
- HTML (3)
- Joomla (1)
- Linux (5)
- PHP (23)
- Sicurezza in Rete (4)
- Web Marketing (2)
- Webdesign e grafica (4)
- WordPress (3)
Archivi
Anno 2011