Cloudflare добавляет Cname к зонам

Я работал над созданием плагина, который будет добавлять клонированное приложение в Cloudways, а затем создавать CNAME в Cloudflare.
все работает нормально с приведенными ниже кодами.
Добавить приложение в код Cloudways:

    public function clone_cloudways_app($server_id, $application, $app_version, $app_label) {

error_log("Cloning cloudways app!");

//Fetch Access Token
$tokenResponse = $this->call_cloudways_API('POST', '/oauth/access_token', null,
[
'email' => 'my email',
'api_key' => 'my api key'
]);
$accessToken = $tokenResponse->access_token;


//Create an app
$addCloneResponse = $this->call_cloudways_API('POST', '/app', $accessToken, [
'server_id' => $server_id,
'application' => $application,
'app_label' => $app_label,
'app_version' => $app_version
]);

error_log("Cloudways clone response: " . json_encode($addCloneResponse));
return $addCloneResponse;
}


function call_cloudways_API($method, $url, $accessToken, $post = [])
{
error_log("call cloudways api!");

$baseURL = 'https://api.cloudways.com/api/v1';
$ch = curl_init();
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
curl_setopt($ch, CURLOPT_URL, $baseURL . $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

if ($accessToken) {
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer ' . $accessToken]);
}

//Set Post Parameters
$encoded = '';
if (count($post)) {
foreach ($post as $name => $value) {
$encoded .= urlencode($name) . '=' . urlencode($value) . '&';
}
$encoded = substr($encoded, 0, strlen($encoded) - 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $encoded);
curl_setopt($ch, CURLOPT_POST, 1);
}
$output = curl_exec($ch);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($httpcode != '200') {
error_log('Unable to clone app: ' . $httpcode . ' output: ' . substr($output, 0, 10000));
}
curl_close($ch);
return json_decode($output);
}

Таким образом, вышеприведенные коды работают и приложение добавляется в облачные сервисы, а также ниже приведены мои коды для создания нового домена в cloudflare:

    public function create_new_domain( $domain_name, $cname ) {

error_log('curl create new domain works!');
$headers = array(
"X-Auth-Email: my email goes here",
"X-Auth-Key: my key goes here",
"Content-Type: application/json");

$ch = curl_init();

// set URL and other appropriate options
$url = "https://api.cloudflare.com/client/v4/zones/5a1af5f2251b5afbce3e332de37b67b3/dns_records";
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers );

//Set Post Parameters
$post = array (
"type" =>   "CNAME",
"name" =>   $domain_name,
"content" =>$cname,
"ttl" =>    120,
"proxied"=> true

);

$encoded = " ";
if (count($post)) {
$encoded = json_encode($post);
curl_setopt($ch, CURLOPT_POSTFIELDS, $encoded);
curl_setopt($ch, CURLOPT_POST, 1);
}
$result = curl_exec($ch);

error_log( "API result: " . json_decode( $result ) );

return json_decode($result);

}

Проблема, с которой я столкнулся, состоит в том, что созданный домен превратился в cloudflare, который является примером:Http: //wp-99.mywebsite/ я получаю сообщение об ошибке 1016 ID луча: 3fb50bbf650542a9 • 2018-03-14 07:32:21 UTC
Ошибка исходного DNS

Кто-нибудь может помочь мне решить эту проблему? Я новичок в Php, но учусь через него.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]