利用 cPanel Cron jobs 自動備份

利用 cPanel Cron jobs 自動備份

虛擬主機cPanel,有相當好用的全站備份功能。但是你想有一個完整的備份,你必須登錄到的cPanel,然後擊備份按鈕,等備份完成,然後再下載...

這些步驟是不是能自動化呢? 你需要的是使用Cron jobs功能

利用 cPanel Cron jobs 自動備份

操作方式

1.複製以下程式碼

<?php

$auth = base64_encode("cPanel帳號:cPanel密碼");
$domain = "cPanel網址";
$theme = "https://";
$secure = true;
$ftp = false;
$ftpserver = "";
$ftpusername = "";
$ftppassword = "";
$ftpport = "21";
$ftpdirectory = "/";

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

$socket = fsockopen($url, $port);
if (!$socket) {
exit("Failed to open socket connection.");
}

if ($ftp) {
$params = "dest=ftp&server=$ftpserver&user=$ftpusername&pass=$ftppassword&port=$ftpport&rdir=$ftpdirectory&submit=Generate Backup";
} else {
$params = "submit=Generate Backup";
}

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

while (!feof($socket)) {
$response = fgets($socket, 4096);
echo $response;
}

fclose($socket);

?>

以上程式碼儲存成backup.php,上傳到根目錄中

2.設定Cron jobs

看你是想要每天執行還是每周,設好時間後

1
指令為 php -f ~/backup.php

就醬子!完成了^^

3.定期刪除備份檔

經過一段時間,在網站空間目錄裡一定有很多的備份檔

避免占用我們的空間,所以我們可以建立一個Cron jobs來定期刪除備份檔

例如:定期刪除30天以前的備份檔程式碼:

<?php
$files = glob("*.tar.gz");
foreach($files as $file) {
if(is_file($file)
&& time() - filemtime($file) >= 30*24*60*60) { // 30 days
unlink($file);
}
}
?>

與大家分享...
利用 cPanel Cron jobs 自動備份
Facebook
0利用 cPanel Cron jobs 自動備份
Google+
0利用 cPanel Cron jobs 自動備份
Pinterest
0利用 cPanel Cron jobs 自動備份
email
0 回復

發表評論

想要留言嗎?
歡迎歡迎!

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *