chillnet.co.za

Cpanel Backup Script PDF Print E-mail
Monday, 10 August 2009 11:18

If you're using CPanel and would like to periodically backup your complete site to a remote FTP location, then this would be usefull for you.

Create a new PHP File called fullbackup.php. (If you are unsure how to-do this, please consult with a friend who are familier with 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 = ""; // Username used to login to CPanel
 $cppass = ""; // Password used to login to CPanel
 $domain = "www."; // 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 = ""; // Username for FTP account
 $ftppass = ""; // Password for FTP account
 $ftphost = ""; // Full hostname or IP address for FTP host
 $ftpmode = "ftp"; // FTP mode ("ftp" for active, "passiveftp" for passive)
 
 // Notification information
 $notifyemail = ""; // Email address to send results
 
 // Secure or non-secure mode
 $secure = 0; // 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);
 

To download this script click here.

Now in order to automatically run your script on a daily basis, log into your Cpanel Account.

  • Click On 'Cron Jobs'
  • Add a line simular to this:
    • php -f fullbackup.php
  • You can set this to run daily, weekly or even once a month.
Last Updated ( Wednesday, 12 August 2009 15:33 )
 

Signup For Fax2Email

 
Get your free Fax2Email number
 
Email Address:
Contact Name:
Contact Number:
 
 

Random Products

International Domain Name Registration
International Domain Name Registration
R150.00


Chill-IT-Reseller-Linux Hosting Package
Chill-IT-Reseller-Linux Hosting Package
R299.00


Google Ads

Banner