Madogarar ilimi

Sayar da Zinn® hosting daga HostBill, Blesta, ko kuma naku tsarin

Sayar da Zinn hosting daga HostBill, Blesta ko kuma tsarin ku na kanku: kayan aikin HostBill na kyauta, abokin ciniki na PHP mai fayil guda ɗaya, ƙa'idodi biyu da ke jawo kuɗi idan an keta su, da fage biyu na buƙata waɗanda ke da sauƙin barewa.

Idan kuna gudanar da WHMCS, yi amfani da tsarin WHMCS maimakon haka — wannan shafin na komai ne wanda ya rage. Akwai zabuka biyu, duka biyu kyauta ne kuma duka biyu GPL-2.0-or-later ne.

HostBill

Tsarin daukar shafukan yanar gizo tare da ayyuka shida iri daya na na WHMCS.

  1. Sauke shi kuma cire zip din.
  2. Sanya kundin adireshi na zinn a cikin includes/modules/Hosting/ ta yadda fayilolin za su sauka a
  3. includes/modules/Hosting/zinn/class.zinn.php da includes/modules/Hosting/zinn/ZinnHostBillClient.php.

  4. Settings → Modules → Hosting, kunna Zinn Digital®, kuma ƙara haɗin gwiwa:
  • Adireshi na API: https://api.zinndigital.com
  • Maɓallin API: maɓallin API ɗinku na Zinn® (filin password ne, don haka HostBill yana adana shi a ɓoye)
  1. A kan samfurin saita Layin samfur (misali mainstream), Taron aiki (wordpress ta
  2. tsohuwa), kuma da zabi Aikace-aikace da Sigar PHP.

  3. Danna Gwada haɗin gwiwa.

Kada ku sake sanya sunan kundin adireshi na zinn. Mai lodi na HostBill yana fitar da aji da yake nema daga sunan kundin adireshi, don haka sake suna yana samar da tsarin da kwamitin ke nunawa kuma ba ya kira ba.

Komai wani abu daban — abokin ciniki na PHP

Fayil ɗaya, babu abubuwan dogaro, babu zato na kwamiti. Zazzage ZinnProvisioning.php a cikin lambar ku ta kanku kuma ku kira hanyoyi shida.

require_once 'ZinnProvisioning.php';

$zinn = new ZinnProvisioning(getenv('ZINN_API_KEY'));

// Lokacin da aka biya oda — sau ɗaya ga kowane ABOKIN CINIKI, sannan sau ɗaya ga kowane SABIS:
$orgId  = $zinn->account('customer-4211', 'Acme Ltd');
$siteId = $zinn->provision('service-9915', $orgId, 'acme.com', 'mainstream', 'wordpress');
// Ajiye $orgId a kan abokin cinikin ku kuma $siteId a kan sabis ɗinku.

$zinn->suspend($siteId, 'INV-2026-114 bai biya ba');   // wani daftari ya kasance ba a biya shi ba
$zinn->unsuspend($siteId);                        // suna biya
$zinn->terminate($siteId);                        // suna soke — yana tsara sharewa

// Lokacin da suka danna "shiga cikin shafin yanar gizon nawa" — ƙirƙira shi a kan DANNAWA, ba a kan fassarar shafi ba:
header('Location: ' . $zinn->signInLink($siteId));

Ba ku rubuta PHP ba? Kiran guda suna cikin maƙasudin API kuma za ku iya yin su daga kowane abu.

Maɓallin API

Izini bakwai, kuma babu kari: org.create, org.read, sites.create, sites.view, sites.delete, reseller.view, reseller.provision.

Ba reseller.manage ba. Maɓallin da kuka liƙa a cikin kwamitin lissafin kuɗi ya kamata ya iya riƙe abokin ciniki saboda rashin biya kuma ya sanya su shiga; bai kamata ya iya sake rubuta takaddun shaida na ƙofar biyan kuɗi na ku ba.

Dokoki biyu waɗanda ke kashe kuɗi lokacin da aka keta su

  1. Sanya maɓalli a kan ABOKIN CINIKI Naku, da shafin yanar gizo a kan SABIS Naku. Odar abokin ciniki ta biyu
  2. dole ta sauka a cikin asusun da suke da shi tun riga. Sanya maɓalli a kan sabis da abokin ciniki ɗaya yana ƙarewa tare da asusu uku marasa alaƙa da kwamitin kula da su guda uku daban-daban.

  3. Aika maɓallin idempotency a kowane ƙirƙira, wanda aka fitar daga ID ɗinku na abu. Kowane
  4. tsarin lissafin kuɗi yana sake gwadawa — kiran ƙofar biyan kuɗi yana zuwa sau biyu, mai gudanarwa yana sake gudanar da tanadi wanda bai yi nasara ba, abokin ciniki yana danna sau biyu. Ba tare da shi ba ƙoƙari na biyu yana ƙirƙirar shafin yanar gizo na biyu kuma ana biyan ku kuɗi don shi. Duk tsarin da abokin ciniki na PHP suna yi muku wannan; idan kuna kiran API kai tsaye, aika Idempotency-Key.

Fage uku waɗanda ke da sauƙin barewa

Kowannensu yana fasa wani aiki gaba ɗaya, kuma babu wanda ke nuna kansa a matsayin wani abu sai kuskuren inganci — sai dai na farko, wanda ke nuna kansa a matsayin ba komai ko kaɗan:

  • ⛔⛔ Dole ne a sanya abokin ciniki a kan shiri KAFIN a tanadi shafin yanar gizon su na farko, tare da
  • POST /v1/reseller/clients/{orgId}/plan, kuma an wuce subscription_id ɗinsa zuwa POST /v1/sites. Wannan shi ne wanda ba shi da kuskure don karantawa. Sabon asusun abokin ciniki ba ya riƙe rajista kuma POST /v1/sites ba shi da filin shiri, don haka shafin yanar gizo da aka tanada ba tare da ɗaya ba yana ɗauke da babu shiri ko kaɗan: bayanin jumlarku an gina shi daga rajistar rayuwa ta abokin cinikin ku, don haka babu layin da aka ɗaga kuma Zinn® bai biya ku komai ba har tsawon lokacin da shafin yanar gizon yake aiki; abokin cinikin ku baya gado ko wane izini, don haka ba a amfani da wani quota a kan shafin yanar gizon su; kuma babu komai don haɓakawa ya canza. Odar ta dawo da 201, shafin yanar gizon yana tanadawa, kuma yana aiki da kyau. Babu komai a kowane ɓangare da ke ba da rahoton wani abu daga ciki.

Odar tana da muhimmanci: POST /v1/sites yana rubuta duk wani rajista da ke akwai a lokacin da yake gudu, don haka shirin da aka saita bayan haka ba ya haɗewa ta baya.

  • POST /v1/sites yana buƙatar stack_type. Ku bar shi kuma babu odar da za ta iya yin nasara.
  • **DELETE /v1/sites/{siteId} yana buƙatar jiki `{"confirm_domain": "<the site's own
  • domain>"}** — tabbataccen tabbaci, saboda wannan shine aikin lalacewa. Ku bar shi kuma babu soke wa da zai iya yin nasara, don haka sabis ɗin yana ci gaba da aiki kuma kuna ci gaba da biyan kuɗi don shi. Karanta sunan yanki baya daga GET /v1/reseller/services/{siteId}` maimakon amfani da rubutunku na kanku: ana kwatanta shi da sunan yanki na asali na shafin yanar gizon kuma ba a kowane lokaci da wani alias ba.

Karanta dukkan kuskure, ba kawai jumla ba

Saƙon ƙin inganci yana da ban sha'awa gaba ɗaya — "The request was well-formed but failed validation." — saboda rabin aikin yana cikin details, wanda ke sanya sunan filin da dalilin da ya sa. Duk tsarin da abokin ciniki na PHP suna sanya shi a ƙarshen saƙon da suke nuna wa mai gudanar ku. Idan kuna kiran API da kanku, karanta error.details; wasu shigarwar suna ɗauke da ƙimar banza maimakon jumla, wanda shine yadda max_sites: 0 ya isa gare ku lokacin da shirin dillalin ku ba shi da wuri.

Kafin odar ku ta farko

Shafukan yanar gizo da abokan cinikin ku suka saya suna ƙidaya zuwa ga izinin shafin yanar gizon shirin dillalin ku, don haka kuna buƙatar shiri tare da wuri a ciki. Gwajin haɗin gwiwa ba zai iya gano wannan ba — yana karanta shirin ku kuma baya tanadin komai — don haka yana ba da rahoton lafiyayyen asusun da ba zai iya siyarwa ba tukuna. Odar da aka sanya ba tare da izini ba ana ƙin ta tare da saƙo da ke cewa hakan daidai.

Tabbatar da zazzagewar ku

Dukiyoyin biyu ana ba da su ta TLS daga sunan mai masaukin baki namu, ba a tura su wani wuri ba, tare da checksums na SHA-256 0nsu an buga su kusa da hanyoyin haɗin zazzagewar a shafin zazzagewa.

Kuna nan makale?

An haɗa da tallafi a kowane tsari kuma ana ba da amsa a cikin harshenka.

Tuntuɓi tallafi Dukkan labarai