dnspod api 自动备份域名记录

发布时间:2020-07-05 17:33:29 作者:liweibenz
来源:网络 阅读:1112

将下面代码复制到可以执行php的服务器上面。

<?php
header("Content-type:text/html;charset=utf-8");
/*
 * 说明:此文件在任何可以执行php的服务器都可以运行, 此文件需要调用www.dnspod.cn网站的用户名和密码,请注意保密.
 * 如果修改了网站的用户名或者密码。请修改 jjuser 和 jjpass 变量即可,否则将无法备份域名.
 * 作者:李伟
 * 时间:2014-11-17 17:16
 *
 */

// 用户名&&密码
$jjuser = 'xxxx@xxx.com';
$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 );
}
}

?>





如果运行不了,请留言



推荐阅读:
  1. 什么是Azure Private DNS?Azure Private DNS有什么功能?
  2. mysql多层元信息与查询的示例分析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

dnspod api php dnspod

上一篇:Servlet学习笔记(6)——GenericServlet

下一篇:mysql误删除处理方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》