ywdblog 6 년 전
부모
커밋
d669b2eccb
3개의 변경된 파일73개의 추가작업 그리고 28개의 파일을 삭제
  1. 32 18
      alydns.php
  2. 9 0
      config.php
  3. 32 10
      txydns.php

+ 32 - 18
alydns.php

@@ -2,10 +2,6 @@
 
 date_default_timezone_set("GMT");
 
-//这两个值需要去阿里云申请
-define("accessKeyId", "");
-define("accessSecrec", "");
-
 /*
 //$obj = new AliDns(accessKeyId, accessSecrec, "newyingyong.cn");
 
@@ -34,28 +30,46 @@ define("accessSecrec", "");
 /*
 example:
 
-php alydns.php  "simplehttps.com" "test" "test2" 
+php alydns.php  "simplehttps.com" "dnsv" "dnsk"  APPKEY APPTOKEN
 */
 
 ########## 配合 cerbot 运行 
 
-echo $argv[1] . "-" . $argv[2] . "-" . $argv[3];
+# 第一个参数是 action,代表 (add/clean) 
+# 第二个参数是域名 
+# 第三个参数是主机名(第三个参数+第二个参数组合起来就是要添加的 TXT 记录)
+# 第四个参数是 TXT 记录值
+# 第五个参数是 APPKEY
+# 第六个参数是 APPTOKEN
+
+echo "域名 API 调用开始\n" ;
+
+echo $argv[1] . "-" . $argv[2] . "-" . $argv[3] . "-" . $argv[5] . "-" . $argv[5] . "-" . $argv[6] . "\n";
 
-$domainarray = AliDns::getDomain($argv[1]);
-$selfdomain = ($domainarray[0]=="")?$argv[2]:$argv[2] . "." . $domainarray[0];
+$domainarray = AliDns::getDomain($argv[2]);
+$selfdomain = ($domainarray[0]=="")?$argv[3]:$argv[3] . "." . $domainarray[0];
 
-$obj = new AliDns(accessKeyId, accessSecrec, $domainarray[1]);
-$data = $obj->DescribeDomainRecords();
-$data = $data["DomainRecords"]["Record"];
-if (is_array($data)) {
-      foreach ($data as $v) {
-           if ($v["RR"] == $selfdomain) {
-               $res = $obj->DeleteDomainRecord($v["RecordId"]);
-           }
-      }
+$obj = new AliDns($argv[5], $argv[6], $domainarray[1]);
+
+switch ($argv[1]) {
+	case "clean":
+		$data = $obj->DescribeDomainRecords();
+		$data = $data["DomainRecords"]["Record"];
+		if (is_array($data)) {
+      			foreach ($data as $v) {
+	           	if ($v["RR"] == $selfdomain) {
+               		$res = $obj->DeleteDomainRecord($v["RecordId"]);
+        	   	}
+      		}
 } 
+	break;
+
+case "add":
+	$res = $obj->AddDomainRecord("TXT", $selfdomain,$argv[3]);
+break;
+}
 
-$res = $obj->AddDomainRecord("TXT", $selfdomain,$argv[3]);
+echo "域名 API 调用结束\n" ;
 
 ############ Class 定义
 

+ 9 - 0
config.php

@@ -0,0 +1,9 @@
+### aly
+
+LTAIkLV6coSSKklZ
+YEGDVHQV4oBC6AGQM9BWaHStUtNE5M
+
+
+define("txyaccessKeyId", "AKIDwlPr7DUpLgpZBb4tlT0MWUHtIVXOJwxm");
+define("txyaccessSecrec", "mMkxzoTxOirrfJlFYfbS7g7792jEi5GG");
+

+ 32 - 10
txydns.php

@@ -4,22 +4,42 @@ date_default_timezone_set("GMT");
 
 ############ 请在腾讯云申请“API密钥”,替换下面两个常量
 //去 https://console.cloud.tencent.com/cam/capi 页面申请 
-define("txyaccessKeyId", "");
-define("txyaccessSecrec", "");
+//https://cloud.tencent.com/document/product/302/4032
+
+
+define("txyaccessKeyId", "AKIDwlPr7DUpLgpZBb4tlT0MWUHtIVXOJwxm");
+define("txyaccessSecrec", "mMkxzoTxOirrfJlFYfbS7g7792jEi5GG");
+
 
-######### 类测试
 /*
   $obj = new TxyDns(txyaccessKeyId, txyaccessSecrec, "yudadan.com");
   //显示所有域名
-  //$obj->DomainList();
-  //添加域名 TXT 记录
-  $obj->RecordCreate("www3","TXT","s");
-  //显示某个域名所有的 TXT 记录
-  $data = $obj->RecordList("www3","TXT");
-
+  $data = $obj->DomainList();
+  if ($data["code"]!=0) {
+	echo $data["message"] . "\n";	
+  } 
+//可以增加同名的二条
+  $data = $obj->RecordCreate("www3","TXT",rand(10,1000));
+  $data = $obj->RecordCreate("www3","TXT",rand(10,1000));
+  $data = $obj->RecordCreate("www3.www3","TXT",rand(10,1000));
+
+  if ($data["code"]!=0) {
+	echo $data["message"] . "\n";	
+  }  
+
+//查看一个主机的所有txt 记录
+$data = $obj->RecordList("www3.www3","TXT");
+
+$data = $obj->RecordList("www3","TXT");
+$records = $data["data"]["records"];
+foreach ($records as $k=>$v) {
+ //根据ID修改记录
+ $data = $obj->RecordModify("www3", "TXT", rand(1000,2000), $v["id"]);
+//根据ID删除记录 
+$obj->RecordDelete($v["id"]);
+}
 */
 
-
 ###### 代码运行
 // php txydns.php  "simplehttps.com" "txtname" "txtvalue"  
 //$argv[1] = "simplehttps.com";
@@ -29,6 +49,8 @@ define("txyaccessSecrec", "");
 $domainarray = TxyDns::getDomain($argv[1]);
 $selfdomain = ($domainarray[0]=="")?$argv[2]:$argv[2] . "." . $domainarray[0];
 
+
+
 //为了匹配出二级域名,以及正确的RR
 $obj = new TxyDns(txyaccessKeyId, txyaccessSecrec, $domainarray[1]);
 $data = $obj->RecordList($selfdomain , "TXT");