Rumah >php教程 >php手册 >CPanel面板利用php实现自动备份网站文件

CPanel面板利用php实现自动备份网站文件

WBOY
WBOYasal
2016-05-25 16:54:061907semak imbas

CPanel面板是一款非常强大的虚拟主机管理面板了,如果你是空间商估计这个cp面板你不陌生哦,下面我来介绍利用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 = "**"; // CPanel帐号
$cppass = "***"; // CPanel密码
$domain = "***"; // cPanel所在域名或IP
$skin = "x3"; // 正在使用的cPanel风格,默认"x3"。
/************** 备份目的地 ***************
"homedir" - 本地主目录
"ftp" - 远程FTP备份(主动模式)
"passiveftp" - 远程FTP备份(被动模式)
"scp" - 加密传输(需服务器支持)
****************************************/
$savedir = "ftp"; // 备份目的地,默认"homedir",即只做本地备份。
// FTP上传的信息(备份目的地为本地的,可不填)
$ftpuser = "***"; // FTP帐号
$ftppass = "***!"; // FTP密码
$ftphost = "***"; // FTP服务器IP
$ftpport = "21"; // FTP端口,默认21
$ftprdir = "/"; // 远程FTP目录,默认"/"
// 通知信息
$notifyemail = "**@gmail.com"; // 信息反馈邮件地址
// 安全模式
$secure = 1; // 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&#39;t do anything with it.
while (!feof($socket)) {

以上代码复制保存为: fullbackup.php文件,上传到public_html以外的目录

这个全局脚本包含cPanel的登录帐号和密码,为了安全考虑,需要将这个脚本放到public_html文件夹以外的文件夹中,比如:“/home/yourname/backup”,并设置该文件夹的权限为600。切记!

2.填写好相关信息,修改文件名为fullbackup.php

3.将上述脚本上传到“/home/yourdomain/beifen”目录。(没有可以新建beifen目录)

4.将beifen目录的权限改为600

5.打开cpanel面板的时钟守护作业(Cron Jobs)。

选择作业频率,在command栏输入

1 /usr/bin/php -q /home/yourname/backup/fullbackup.php


本文地址:

转载随意,但请附上文章地址:-)

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn