cPanel虚拟空间定时全局备份方案
好久没写东西了,今天是儿童节了,一岁一蹉跎啊,还是打起精神来!
说说我采用的全局备份方案吧:
简单的说就是用cPanel的Cron Jobs来定时运行全局备份脚本并自动FTP上传到其他的服务器(或客户端)
附上全局备份脚本,请自行复制修改为正确的配置并保存为fullbackup.php
[php]
// PHP script to allow periodic cPanel backups automatically.
// Based on script posted by max.hedroom in cpanel.net forums
// This script contains passwords. KEEP ACCESS TO THIS FILE SECURE!
// ********* 下列项目需要设定 *********
// cPanel登入信息
$cpuser = "username"; // 登入cPanel的帐号
$cppass = "password"; // 登入cPanel的密码
$domain = "example.com"; // cPanel使用的网域
$skin = "monsoon"; // 设定正在使用的cPanel风格(例如:x, rvblue等,不正确将不能正常运行本脚本)
// FTP上传的信息(这是不是指你CPanel所在服务器的FTP信息)
$ftpuser = "ftpusername"; // FTP帐号
$ftppass = "ftppassword"; // FTP密码
$ftphost = "ftp.example.com"; // FTP服务器网址(或ip)
$ftpmode = "ftp"; // FTP模式("ftp"或"passiveftp")
// 通知信息
$notifyemail = "[email protected]"; // 寄发执行结果的e-mail地址
// 安全模式
$secure = 0; // 0为标准http, 1为ssl(需要主机支援ssl功能)
// 设定值为1时会在排程记录中产生网页报告
$debug = 0;
// *********** 以下不需更改 *********
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.0rn");
fputs($socket,"Host: $domainrn");
fputs($socket,"Authorization: Basic $passrn");
fputs($socket,"Connection: Closern");
fputs($socket,"rn");
// Grab response even if we don't do anything with it.
while (!feof($socket)) {
$response = fgets($socket,4096);
if ($debug) echo $response;
}
fclose($socket);
?>[/php]
接下来就是上传该文件到非public_html目录下(增加安全性)并在Cron Jobs里面添加定时和备份命令了:
/usr/local/bin/php /home/jorwang/fullbackup.php
有点可以注意下:
Please enter an email address where the cron output will be sent:
本来这里也是填写一个执行信息反馈邮件地址的,由于我们在脚本里面已经设置,所以可以为空。
参考:http://www.totalchoicehosting.com/forums/index.php?showtopic=7787