Tycoon Talk
Become a Big fish!
The number 1 forum for online business!
Post topics, ask questions, share your knowledge.
Tycoon Talk is part of Freelancer.com - find skilled workers online at a fraction of the cost.

Website and Server Administration Forum


You are currently viewing our Website and Server Administration Forum as a guest. Please register to participate.
Login



Closed Thread
[SOLVED] HOW TO: Daily Remote Backup on a cPanel Host
Old 12-01-2009, 01:22 AM [SOLVED] HOW TO: Daily Remote Backup on a cPanel Host
davet's Avatar
Extreme Talker

Posts: 162
Name: David Tanguay
Location: Tampa, FL
Trades: 1
I have found this info to be very helpful and it has saved us many times in the past from extended downtime for our sites.

This is how we backup our important sites daily to a remote FTP location.

Create a file in your /home/username/ directory named backup.php with the code below. Then setup a cron to run the file daily. We actually run it 4 times daily.

You don't need your own expensive FTP server either. I use an XP Pro machine with Filezilla server installed to it for our remote FTP server. The XP machine is located right next to my main workstation so I can burn copies to DVD if need be. I use port forwarding within my Verizon FIOS router to point the FTP port to the XP machine.

I can sleep at night now knowing I have a local copy of our most important data.

Don't rely on your hosting provider for backups. If you read most hosting providers' policies they're not responsible for them anyways.

Do the smart thing and start keeping backups of your site to a remote location, on your local computer or one you have physical access to.

Code:
<?php

// PHP script to allow periodic cPanel backups automatically, optionally to a remote FTP server.
// This script contains passwords.  KEEP ACCESS TO THIS FILE SECURE! (place it in your home dir, not /www/)

// ********* THE FOLLOWING ITEMS NEED TO BE CONFIGURED *********

// Info required for cPanel access
$cpuser = "cpanel-username"; // Username used to login to CPanel
$cppass = "cpanel-password"; // Password used to login to CPanel
$domain = "yourdomain.com"; // Domain name where CPanel is run
$skin = "x3"; // Set to cPanel skin you use (script won't work if it doesn't match). Most people run the default x theme

// Info required for FTP host
$ftpuser = "remote-ftp-username"; // Username for FTP account
$ftppass = "remote-ftp-password"; // Password for FTP account
$ftphost = "remote-ftp-hostname"; // Full hostname or IP address for FTP host
$ftpmode = "ftp"; // FTP mode ("ftp" for active, "passiveftp" for passive)

// Notification information
$notifyemail = "user@domain.com"; // Email address to send results

// Secure or non-secure mode
$secure = 1; // Set to 1 for SSL (requires SSL support), otherwise will use standard HTTP

// Set to 1 to have web page result appear in your cron log
$debug = 0;

// *********** NO CONFIGURATION ITEMS BELOW THIS LINE *********

if ($secure) {
   $url = "ssl://".$domain;
   $port = 2083;
} else {
   $url = $domain;
   $port = 2082;
}

$socket = fsockopen($url,$port);
if (!$socket) { echo "Failed to open socket connection… Bailing out!\n"; exit; }

// Encode authentication string
$authstr = $cpuser.":".$cppass;
$pass = base64_encode($authstr);

$params = "dest=$ftpmode&email=$notifyemail&server=$ftphost&user=$ftpuser&pass=$ftppass&submit=Generate Backup";

// Make POST to cPanel
fputs($socket,"POST /frontend/".$skin."/backup/dofullbackup.html?".$params." HTTP/1.0\r\n");
fputs($socket,"Host: $domain\r\n");
fputs($socket,"Authorization: Basic $pass\r\n");
fputs($socket,"Connection: Close\r\n");
fputs($socket,"\r\n");

// Grab response even if we don't do anything with it.
while (!feof($socket)) {
  $response = fgets($socket,4096);
  if ($debug) echo $response;
}

fclose($socket);

?>
__________________

Please login or register to view this content. Registration is FREE
|

Please login or register to view this content. Registration is FREE
|
Please login or register to view this content. Registration is FREE

davet is offline
View Public Profile Visit davet's homepage!
 
 
Register now for full access!
Closed Thread     « Reply to [SOLVED] HOW TO: Daily Remote Backup on a cPanel Host
 

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off





   
RSS Feed  Feeds: RSS   JS   XML
RSS Feed  Feeds for this forum: RSS   JS   XML



Page generated in 0.21049 seconds with 12 queries