• 利用飞儿云PHP框架自带的DNSPOD库做DDNS动态域名解析


    取得FiradioPHP

    git clone https://github.com/firadio/firadiophp.git

    保存到/config/dnspod1.php

    <?php
    
    return array(
        'class' => 'FiradioPHPApiDnspod',
        'URL' => 'https://dnsapi.cn',
        'token' => array(
            'created' => '2017-06-27 01:46:01',
            'name' => 'FiradioPHP',
            'id' => 123456789,
            'key' => 'xxxxxxxxxxxxxxxxxxxxx',
        ),
    );

    保存到index.php

    <?php
    
    use FiradioPHPF;
    $key = 'xxxxxxxxxxxxxxxxxxxxxxx';
    if (!isset($_GET['key']) || $_GET['key'] !== $key) {
        echo "error key
    ";
        exit;
    }
    $info = array();
    $info['ip_addr'] = $_SERVER['REMOTE_ADDR'];
    $info['domain'] = isset($_GET['domain']) ? $_GET['domain'] : '';
    $info['interface'] = isset($_GET['interface']) ? $_GET['interface'] : '';
    require __DIR__ . '/FiradioPHP/F.php';
    F::init(__DIR__ . DS . 'config');
    $oDnspod1 = F::$oConfig->getInstance('dnspod1');
    $aSets = array();
    $oSet = array();
    $oSet['type'] = 'A';
    $oSet['value'] = $info['ip_addr'];
    $oSet['status'] = 'enable';
    $oSet['remark'] = 'interface=' . $info['interface'];
    $aSets[] = $oSet;
    $oDnspod1->setRecordIPs('firadio.net', 'dx', $aSets);
    $oDnspod1->setRecordIPs('firadio.net', 'vps', $aSets);

    然后crontab -e加入

    * * * * * curl 'http://xxx.xxx.xxx.xxx:12345/firadio/dnspod.php?key=xxxxxxxxxxxxx&domain=vps.firadio.net&interface=adsl1' >> /tmp/dnspod.log

     或者

    *       *       *       *       *       (/usr/local/bin/curl 'http://123.123.123.123:8888/firadio/dnspod.php?key=123456&domain=vps.firadio.net&interface=adsl1') > /dev/null
  • 相关阅读:
    用graphviz,pygraphviz快速自动绘图
    python 实现的huffman 编码压缩,解码解压缩
    python 字符串的显示
    PKU acm 1651 multiplication puzzle
    SQL Server中的数据类型详解
    (转) treeview 的设计思路
    将英文的week 转换为中文的 简单的方法
    常用的文件对应的MIME类型:
    客户端传参问题
    绑定数据与截取的另外的一中写法
  • 原文地址:https://www.cnblogs.com/xiangxisheng/p/9459602.html
Copyright © 2020-2023  润新知