dnspod api 自動備份域名記錄

將下面代碼複製到可以執行php的服務器上面。

<?php
header("Content-type:text/html;charset=utf-8");
/*
 * 說明:此文件在任何可以執行php的服務器都可以運行, 此文件需要調用www.dnspod.cn網站的用戶名和密碼,請注意保密.
 * 如果修改了網站的用戶名或者密碼。請修改 jjuser 和 jjpass 變量即可,否則將無法備份域名.
 * 作者:李偉
 * 時間:2014-11-17 17:16
 *
 */

// 用戶名&&密碼
$jjuser = '[email protected]';
$jjpass = 'password';

// 獲取域名列表 api
$get_domain = `curl -X POST https://dnsapi.cn/Domain.List -d 'login_email=$jjuser&login_password=$jjpass&format=json'`;

// 將獲取的域名轉換成數組格式
$objname = json_decode ( $get_domain );

//循環顯示所有域名ID
foreach ( $objname->domains as $key => $val ) {
$dd = date ( 'Y-m-j' );
$dnspod_domain_id = $val->id;//獲取域名ID
$dnspod_domain_name = $val->name . "-" . $dd . ".txt";//定義文件名稱,格式:域名-日期.txt

// 以域名ID爲條件,獲取該域名下的所有記錄的api
$get_a = `curl -X POST https://dnsapi.cn/Record.List -d 'login_email=$jjuser&login_password=$jjpass&format=json&domain_id=$dnspod_domain_id'`;
// 將獲取的域名轉換成數組格式
$obj = json_decode ( $get_a );
// 以域名ID 循環
foreach ( $obj->records as $key => $val_list ) {
//導出格式,每個字段一個tab鍵
$d_list = $val_list->name . "\t" . $val_list->type . "\t" . $val_list->line . "\t" . $val_list->value . "\t" . $val_list->mx . "\t" . $val_list->ttl . "\r\n";

//下面兩個變量暫時沒用
//$str = "主機|類型|線路|記錄值|MX|優先級|TTL";
//$str1 = iconv ( "GB2312", "UTF-8", $str );

//以日期創建目錄,首先判斷是否存在,如果不存在就創建目錄
$date_dir = "/data/dnspod/$dd/";
if(! is_dir ($date_dir)){
mkdir ($date_dir,'0777');
}
// fopen 第一個參數,文件名稱,第二個參數,a 表示追加
$fp = fopen ( "$date_dir/$dnspod_domain_name", 'a' );
fwrite ( $fp, $d_list ); // 寫入文件
fclose ( $fp );
}
}

?>





如果運行不了,請留言



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章