Xserverが今なら最大50%OFF! 2022年11月25日(金)12:00まで

CloudflareのDNSレコードを一括で削除する方法

  • URLをコピーしました!

この記事は約3分で読めます。
本文は約2063文字です

この記事を書いた人

国内のあらゆるレンタルサーバーを使用、管理した経験があります。サーバー選びからWordpressを使ったサイト運営まで丸っとお任せください。あなた様のご希望にそった本当に使える最適なサーバーをご紹介します。

Cloudflareを利用する場合、DNSレコードの設定は必須です。

CloudflareのDNSレコードは既存のDNSレコードをスキャンして自動的に設定してくれますが、あまり精度がよくありません。

お名前.comでドメインを取得して、ネームサーバーを変更せずに、Cloudflareにドメイン追加してしまうと、不要なDNSレコードが大量に登録されてしまうこともあります。

Web上のインターフェスだと、不要なDSNレコードを削除したい時に、マウスでひとつづつ削除するしかなく、とてもやってられません。

CloudflareのDNS設定はエクスポートしたりインポートする機能があります。

それを使うと簡単にDNSレコードを登録できますが、残念なことに上書きではなく、追加されてしまいますので、不要なDNSレコードは手動で削除する必要があります。

CloudflareのAPIを使うと、一括で削除できますので、この記事でご紹介します。

記事の内容

CloudflareのDNSレコードを一括で削除するPHPスクリプト

個別に必要な情報

Cloud flareにログインして、以下の情報をメモして、スクリプト先頭の変数に設定します。

  • zone id
  • global api key
  • email

実行方法

php cf_dns_delete.php

スクリプト

<?php


$zoneid="<<zone id>>";
$apikey="<<global api key>>";
$apimail="<< email >>";

// Generated by curl-to-PHP: http://incarnate.github.io/curl-to-php/
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'https://api.cloudflare.com/client/v4/zones/'.$zoneid.'/dns_records');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');


$headers = array();
$headers[] = 'X-Auth-Email: '.$apimail;
$headers[] = 'X-Auth-Key: '.$apikey;
$headers[] = 'Content-Type: application/json';
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$result = curl_exec($ch);
if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
}
curl_close($ch);
$ids=array();
$res = json_decode($result);
foreach($res->result as $r){
        echo $r->id."\n";
$ids[]=$r->id;


$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'https://api.cloudflare.com/client/v4/zones/'.$zoneid.'/dns_records/'.$record_id);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'DELETE');

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$result = curl_exec($ch);
if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
}
curl_close($ch);


}

関連リソース

まとめ

今回ご紹介したスクリプトがあれば、なんかの手違いでDNSレコードが大量に登録されてしまった時も、一度全部削除してやり直すことができます。

この記事が気に入ったら
いいねしてね!

記事が参考なったらシェア!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

コメントは日本語で入力してください。(スパム対策)

記事の内容