我正在尝试使用xmlapi-php创建一个插件域。 我有一个共享主机帐户。
此示例代码来自 github
<?php
include '../xmlapi.php';
$ip = getenv('REMOTE_HOST');
$root_pass = getenv('REMOTE_PASSWORD');
$domain = "somedns.com";
$xmlapi = new xmlapi($ip);
$xmlapi->password_auth("root",$root_pass);
$xmlapi->set_http_client('curl');
$xmlapi->set_port(2086);
$xmlapi->set_debug(1);
print $xmlapi->adddns($domain,$ip);
?>
我无法让这段代码用于创建插件域。 怎么能做到呢?
好吧,我已经尽我所能想通了,这是所有失落灵魂的解决方案:
认证
您需要至少运行一次以下代码进行身份验证和 xml api 包装器:
// AUTHENTICATION -------------------------
include("xmlapi.php");
$host = "Host ip address or Site.com";
$my_user = "Your cPanel user ID";
$my_pass = "Your cPanel password";
$xmlapi = new xmlapi($host);
$xmlapi->set_port(2083);
$xmlapi->password_auth($my_user, $my_pass);
$xmlapi->set_output('json');
$xmlapi->set_debug(1);
现在您可以开始使用 xmlapi 中提供的功能.php但您不仅限于它们。
电子邮件创建示例
// Calling on the function "addpop" "email_user@email_domain" -------------------------
$email_user = "apitest";
$email_password = "adfm90f";
$email_domain = "somesite.com";
$email_query = '10';
$email_quota = '600';
//$result will be set equal to the JSON output returned by the call
//api1_query is the function
//in the array is where you pass the required parameters
$result = $xmlapi->api1_query($my_user, "Email", "addpop",
array($email_user, $email_password, $email_quota, $email_domain));
显示结果
$result = json_decode($result, true); //Decoding the JSON results to PHP
print_r($result); //Printing the array onto the page
//example of displaying a particular array key, in this example its "result"
echo $result['data']['result'];