Cloudflare PHP API рдмрд╛рдЗрдВрдбрд┐рдВрдЧ

рдмреИрдХрдПрдВрдб PHP рдбреЗрд╡рд▓рдкрд░ рдХреЛрд░реНрд╕ рдХреА рд╢реБрд░реБрдЖрдд рд╕реЗ рдкрд╣рд▓реЗ рд▓реЗрдЦ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ ред




рдЙрди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЬреЛ PHP 7.0 рдпрд╛ рдЙрдЪреНрдЪрддрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, Cloudflare PHP API рдмрд╛рдЗрдВрдбрд░реНрд╕ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдпрд╣ Cloudflare API рдХреЗ рдирд╡реАрдирддрдо рдЪреМрдереЗ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЖрдк рдЗрд╕ рдПрд╕рдбреАрдХреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдИ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐:

  • Cloudflare рдореЗрдВ рдЕрдкрдиреА DNS рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдкреНрд░рдмрдВрдзрд┐рдд рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░реЗрдВред
  • рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рдЦрд╛рддреЗ рдореЗрдВ рдХреНрд╖реЗрддреНрд░ рдЬреЛрдбрд╝реЗрдВред
  • рдкреГрд╖реНрда рдирд┐рдпрдореЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдФрд░ рдкреНрд░рдмрдВрдзрди
  • рдЬрд╝реЛрди рд▓реЙрдХрдбрд╛рдЙрди рдФрд░ рдпреВрдЬрд╝рд░рдПрдЬреЗрдВрдЯ рдирд┐рдпрдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдИрдкреА рдкрддреЗ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдЬреЗрдВрдЯреЛрдВ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмреНрд▓реЙрдХ рдХрд░реЗрдВред
  • Cloudflare IP рдХреА рд╕реАрдорд╛ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдХреЗ рд╕рд╛рде рд╢реНрд╡реЗрддрд╕реВрдЪреА рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрддреА рд╣реИ

рд╕рдорд░реНрдерд┐рдд рд╕реБрд╡рд┐рдзрд╛рдПрдБ


рдпрд╣ рдЖрд▓реЗрдЦ рдХреНрд▓рд╛рдЙрдбрдлрд╝реЗрдпрд░ PHP рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рдЙрджрд╛рд╣рд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ; рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдорд╛рдкрди рдмрд┐рдВрджреБрдУрдВ рдФрд░ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ:

V4 рд╕рдорд╛рдкрди рдмрд┐рдВрджреБ

  • рдбреАрдПрдирдПрд╕
  • рдЖрдИрдкреА
  • рдкреГрд╖реНрда рдирд┐рдпрдо
  • рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдЬреЗрдВрдЯ рдирд┐рдпрдо
  • рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рдмрдВрдзрди (рдЖрдВрд╢рд┐рдХ)
  • рдЬрд╝реЛрди рд▓реЙрдХрдбрд╛рдЙрди
  • рдХреНрд╖реЗрддреНрд░

рдкреНрд░рдорд╛рдгреАрдХрд░рдг

  • рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗрд╡рд╛ рдХреБрдВрдЬреА
  • рдПрдкреАрдЖрдИ рдХреБрдВрдЬреА

рд╕реНрдерд╛рдкрдирд╛


Cloudflare PHP API рдмрд╛рдЗрдВрдбрд┐рдВрдЧ Cloudflare / sdk рдореЗрдВ Packagist рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИ , рдЬрд┐рд╕реЗ рд╕рдВрдЧреАрддрдХрд╛рд░ рджреНрд╡рд╛рд░рд╛ рдХреЙрд▓ рдХрд░рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рд╕рдВрдЧреАрддрдХрд╛рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ cloudflare / sdk :



рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдЖрдк рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рд╕реАрдзреЗ рдкрдврд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдпреЛрдЧрджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╕реНрд░реЛрдд рдХреЛрдб рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдХреНрд▓рд╛рдЙрдбрдлреЗрдпрд░ / рдХреНрд▓рд╛рдЙрдбрдлреЗрдпрд░-php рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ GitHub ред

рдХрд╛рдо рдХреА рд╢реБрд░реБрдЖрдд


рдпрд╣рд╛рдВ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЙрджрд╛рд╣рд░рдг рд╣реИ

<?php

require_once('vendor/autoload.php');

$key = new \Cloudflare\API\Auth\APIKey('mjsa@junade.com', 'API KEY GOES HERE');
$adapter = new Cloudflare\API\Adapter\Guzzle($key);
$user = new \Cloudflare\API\Endpoints\User($adapter);

echo 'Your user ID is: ' . $user->getUserID() . PHP_EOL;


рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкрд░ рдЗрд╕ рд╕рд░рд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЪрд▓рд╛рдиреЗ рд╕реЗ, рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЖрдЙрдЯрдкреБрдЯ рдорд┐рд▓рддреЗ рд╣реИрдВ:



рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рдЬреЛрди


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рднреА рдЬрд╝реЛрди рдХреЛ рдПрдХ рдЦрд╛рддреЗ рдореЗрдВ рдХреИрд╕реЗ рд╕реВрдЪреАрдмрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛рдП:

<?php

require_once('vendor/autoload.php');

$key = new \Cloudflare\API\Auth\APIKey('mjsa@junade.com', 'API KEY GOES HERE');
$adapter = new Cloudflare\API\Adapter\Guzzle($key);

$zones = new \Cloudflare\API\Endpoints\Zones($adapter);
foreach ($zones->listZones()->result as $zone) {
   echo $zone->name.' ('.$zone->plan->name.')'.PHP_EOL;
}

рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЪрд▓рд╛рдиреЗ рд╕реЗ рдирд┐рдореНрди рдЖрдЙрдЯрдкреБрдЯ рдорд┐рд▓реЗрдЧрд╛:



рд╕рднреА рд╡реЗрдмрд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдХреИрд╢ рд╕рд╛рдлрд╝ рдХрд░реЗрдВ


рдпрд╣рд╛рдВ рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдЦрд╛рддреЗ рдХреА рдкреНрд░рддреНрдпреЗрдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдХреИрд╢ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╛рдлрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдЬ рдХреИрд╢ рдПрдВрдб рдкреЙрдЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЖрдк рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдХреИрд╢рдкрд░реНрдЬ рд╡рд┐рдзрд┐ рдХреЗ рдмрдЬрд╛рдп рдХреИрд╢рдкрд╛рд░реНрдЬ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреИрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ):

<?php

require_once('vendor/autoload.php');

$key = new \Cloudflare\API\Auth\APIKey('mjsa@junade.com', 'API KEY GOES HERE');
$adapter = new Cloudflare\API\Adapter\Guzzle($key);

$zones = new \Cloudflare\API\Endpoints\Zones($adapter);
foreach ($zones->listZones()->result as $zone) {
   echo "Cache purge for " . $zone->name . ": ";
   echo $zones->cachePurgeEverything($zone->id) == true ? "successful" : "failed";
   echo PHP_EOL;

}

рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкрд░ рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЖрдкрдХреЛ рдирд┐рдореНрди рдЖрдЙрдЯрдкреБрдЯ рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреЗ:



рдкреЗрдЬ рдирд┐рдпрдо рдмрдирд╛рдирд╛


SDK рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ Cloudflare Zone рдореЗрдВ Page Rules рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣рд╛рдВ рдХреИрд╢реЗ рдмрд╛рдИрдкрд╛рд╕ рдирд┐рдпрдо рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

<?php

require_once('vendor/autoload.php');

$key = new \Cloudflare\API\Auth\APIKey('mjsa@junade.com', 'API KEY GOES HERE');
$adapter = new Cloudflare\API\Adapter\Guzzle($key);
$zones = new \Cloudflare\API\Endpoints\Zones($adapter);

$zoneID = $zones->getZoneID("junade.com");

$pageRulesTarget = new \Cloudflare\API\Configurations\PageRulesTargets('https://junade.com/noCache/*');

$pageRulesConfig = new \Cloudflare\API\Configurations\PageRulesActions();
$pageRulesConfig->setCacheLevel('bypass');

$pageRules = new \Cloudflare\API\Endpoints\PageRules($adapter);
$pageRules->createPageRule($zoneID, $pageRulesTarget, $pageRulesConfig, true, 6);

рд╣рдо рдЬрд╝реЛрди рдПрдВрдбрдкреЙрдЗрдВрдЯ рдХреНрд▓рд╛рд╕ рдХреЗ рдЧреЗрдЯрдЬрд╝реЛрдирд┐рдб рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╕рд╛рдиреА рд╕реЗ рд╡рд╛рдВрдЫрд┐рдд рдЬрд╝реЛрди рдХреА рдЖрдИрдбреА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рдпрд╣ рд╕рд╣рд╛рдпрдХ рд╡рд┐рдзрд┐ рдЬрд╝реЛрди рдХреЗ рдирд╛рдо рд╕реЗ рдЖрдИрдбреА рд▓реМрдЯрд╛рддреА рд╣реИред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдПрд╕рдбреАрдХреЗ рдкреЗрдЬ рдирд┐рдпрдореЛрдВ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рдФрд░ рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛ рдЗрдВрдЬреЗрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╣рдореЗрдВ PageRulesTargets рдФрд░ PageRuleActions рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ CreatePageRate рд╡рд┐рдзрд┐ред

рдбреАрдПрдирдПрд╕


SDK рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рд░рд┐рдХреЙрд░реНрдб рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣рд╛рдБ DNS рд░рд┐рдХреЙрд░реНрдб рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

<?php

require_once('vendor/autoload.php');

$key = new \Cloudflare\API\Auth\APIKey('mjsa@junade.com', 'API KEY GOES HERE');
$adapter = new Cloudflare\API\Adapter\Guzzle($key);
$zones = new \Cloudflare\API\Endpoints\Zones($adapter);

$zoneID = $zones->getZoneID("junade.com");

$dns = new \Cloudflare\API\Endpoints\DNS($adapter);
if ($dns->addRecord($zoneID, "A", 'example', '8.8.8.8', 0, true) === true) {
   echo "DNS record created.". PHP_EOL;
}

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдЗрд╕ рдПрд╕рдбреАрдХреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреАрдПрдирдПрд╕ рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд╡рд┐рд╡рд░рдгреЛрдВ рдХреЛ рд╣рдЯрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реВрдЪреАрдмрджреНрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рд╣рдорд╛рд░реЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ DNS рд░рд┐рдХреЙрд░реНрдб рдХреЗ рдкреНрд░рдХрд╛рд░ рдФрд░ рдирд╛рдо рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдПрдВ:

<?php

require_once('vendor/autoload.php');

$key = new \Cloudflare\API\Auth\APIKey('mjsa@junade.com', 'API KEY GOES HERE');
$adapter = new Cloudflare\API\Adapter\Guzzle($key);
$zones = new \Cloudflare\API\Endpoints\Zones($adapter);

$zoneID = $zones->getZoneID("icyapril.com");

$dns = new \Cloudflare\API\Endpoints\DNS($adapter);
foreach ($dns->listRecords($zoneID)->result as $record) {
   echo $record->type." ".$record->name.PHP_EOL;
}

рдпрд╣ рдЖрдЙрдЯрдкреБрдЯ рддрдм рд╣реЛрдЧрд╛ рдЬрдм рдореИрдВ рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЕрдкрдиреЗ рдХрд┐рд╕реА рдПрдХ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛рдКрдВрдЧрд╛:





рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдиреЗрдВ



All Articles