CP(Cpanel)面板自动定时备份
1、是不是说到看代码就头痛呢?不要紧,这个代码很easy,自己简单的修改一下就OK了。照着教程做,保管你行,不行请留言。代码原理:利用Cpanel面板的时钟守护作业实现自动定时备份,然后将备份文件上传至其他FTP空间(服务器)。将以下代码复制保存为backup.php(注意01 02 03之类的行号不要哦,这个代码高亮插件不行啊,不好复制,直接提供下载:http://pan.baidu.com/share/link?shareid=283804&uk=3171780789),然后根据文件中的提示修改这个文件。
<?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 = "zuinande"; // CPanel帐号
$cppass = "zuinande.com"; // CPanel密码
$domain = "*.*.*.*"; // cPanel所在域名或IP
$skin = "x3"; // 正在使用的cPanel风格,默认"x3"。
/************** 备份目的地 *************** "homedir" - 本地主目录 "ftp" - 远程FTP备份(主动模式) "passiveftp" - 远程FTP备份(被动模式) "scp" - 加密传输(需服务器支持) ****************************************/
$savedir = "ftp"; // 备份目的地,默认"ftp",直接将备份传至FTP空间。
// FTP上传的信息(备份目的地为本地的,可不填)
$ftpuser = "zuinande"; // FTP帐号
$ftppass = "zuinande.com"; // FTP密码
$ftphost = "*.*.*.*"; // FTP服务器IP
$ftpport = "21"; // FTP端口,默认21
$ftprdir = "/"; // 远程FTP目录,默认"/"
// 通知信息
$notifyemail = "admin@zuinande.com"; // 信息反馈邮件地址,自行修改
// 安全模式
$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=$savedir&email=$notifyemail&server=$ftphost&user=$ftpuser&pass=$ftppass&port=$ftpport&rdir=$ftprdir&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);
?>
1、登陆进CP后,选择文件管理器,点击进入主目录:

2、选择创建文件夹,文件夹名称:backup,将文件创建在后面填“/”,不包含引号!创建文件夹,如下图:

3、创建好后将backup文件夹权限修改为700,然后将修改好的backup.php上传到backup文件夹下:


1、回到CP面板,找到高级——时钟守护作业(如下图),点击进去。

2、添加时钟守护作业,可选择每分钟自行,每五分钟执行等等,如果网站内容不是更新非常频繁的话,建议选择一周,给FTP空间减压。命令(其中“你的用户名”为CP面板登陆用户名):
php -q /home/你的用户名/backup/fullbackup.php

3、至此,CP面板自动定时备份就搞定了。Cpanel定时备份,保障数据安全!