繁体   English   中英

PHP DirectAdmin API获取域和域指针

[英]PHP DirectAdmin API get domain and domain pointers

我正在尝试使用DirectAdmin API列出所有域,包括域指针。 我目前有以下代码:

//list users
$sock->query('/CMD_API_SHOW_USERS');
$users=$sock->fetch_parsed_body();

foreach($users['list'] as $user) {
    //get domains for user
    $sock->query(
        '/CMD_API_SHOW_USER_DOMAINS',
        array(
            'user'=>$user
        )
    );

    $domains=$sock->fetch_parsed_body();

    echo str_replace('_', '.', $domain).'<br>';

    //print_r($domains);

    foreach($domains as $domain=>$data) {
        //get domain pointers for domain
        $sock->query(
            '/CMD_API_DOMAIN_POINTER',
            array(
                'domain'=>str_replace('_', '.', $domain)
            )
        );

        $domain_pointers=$sock->fetch_parsed_body();

        print_r($domain_pointers);
    }
}

但是,CMD_API_DOMAIN_POINTER命令仅返回“无法执行您的请求”和“您不拥有该域”。

我这样做正确吗?

我找到了“使用API​​的“登录身份””( https://www.directadmin.com/api.html ),但似乎无法找到如何使用它的方法。

这是要走的路:

include_once 'httpsocket.php';

$sock=new HTTPSocket;
$sock->connect('ssl://fqdn', 2222);
$sock->set_login('admin', 'pass');

//list users
$sock->query('/CMD_API_SHOW_USERS');
$users=$sock->fetch_parsed_body();

foreach($users['list'] as $user) {
    //get domains for user
    $sock->query(
        '/CMD_API_SHOW_USER_DOMAINS',
        array(
            'user'=>$user
        )
    );

$domains=$sock->fetch_parsed_body();

echo str_replace('_', '.', $domain).'<br>';

//print_r($domains);

$sock2=new HTTPSocket;
$sock2->connect('ssl://fqdn', 2222);
$sock2->set_login('admin|'.$user, 'pass');

    foreach($domains as $domain=>$data) {
        //get domain pointers for domain
        $sock2->query(
            '/CMD_API_DOMAIN_POINTER',
            array(
                'domain'=>str_replace('_', '.', $domain)
            )
        );

        $domain_pointers=$sock2->fetch_parsed_body();

        print_r($domain_pointers);
    }
}

希望这对以后的人有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM