WHMCS ์„ค์น˜ ๋ฐฉ๋ฒ•

Domain Name API โ€“ ์„ค์น˜ ๋ฐ ํ†ตํ•ฉ ๊ฐ€์ด๋“œ

์ด ๋ฌธ์„œ๋Š” DomainNameAPI ๊ณ„์ •์„ WHMCS ์†Œํ”„ํŠธ์›จ์–ด์— ํ†ตํ•ฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

์ตœ์†Œ ์š”๊ตฌ ์‚ฌํ•ญ

  • WHMCS 7.8 ์ด์ƒ
  • PHP 7.4 ์ด์ƒ (๊ถŒ์žฅ: 8.1)
  • PHP SOAPClient ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • T.C. ์‹ ๋ถ„ ๋ฒˆํ˜ธ / ์„ธ๊ธˆ ๋ฒˆํ˜ธ / ์„ธ๋ฌด์„œ ์ •๋ณด๊ฐ€ ํฌํ•จ๋œ ์‚ฌ์šฉ์ž ์ •์˜ ๊ณ ๊ฐ ํ•„๋“œ (์„ ํƒ ์‚ฌํ•ญ)

์ฃผ์˜!!! ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ์ง„ํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ, ์„ค์น˜ ์ „์— ๋ฐ˜๋“œ์‹œ ๊ธฐ์กด ํŒŒ์ผ์„ ๋ฐฑ์—…ํ•˜์‹ญ์‹œ์˜ค.

์—…๋กœ๋“œ

๋‹ค์šด๋กœ๋“œํ•œ ํŒจํ‚ค์ง€ ์•ˆ์˜ โ€œmodulesโ€ ํด๋”๋ฅผ WHMCS๊ฐ€ ์„ค์น˜๋œ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ๋ณต์‚ฌํ•˜์‹ญ์‹œ์˜ค. (์˜ˆ: /home/whmcs/public_html)

์ฐธ๊ณ : .gitignore, README.md, LICENSE ํŒŒ์ผ์€ ์‚ญ์ œํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

Domain Name Api WHMSC ๋ชจ๋“ˆ ์—…๋กœ๋“œ

ํŒŒ์ผ์ด ์ž˜๋ชป ์—…๋กœ๋“œ๋˜๋ฉด WHMCS์—์„œ ๋ชจ๋“ˆ์„ ์ธ์‹ํ•˜์ง€ ๋ชปํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“ˆ ์„ค์ •

ํŒŒ์ผ ์—…๋กœ๋“œ ํ›„, WHMCS ๊ด€๋ฆฌ์ž ํŒจ๋„์—์„œ โ€œ์‹œ์Šคํ…œ ์„ค์ •(System Settings)โ€์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

์‹œ์Šคํ…œ ์„ค์ •

โ€œ์‹œ์Šคํ…œ ์„ค์ •โ€์— ๋“ค์–ด๊ฐ„ ํ›„ โ€œ๋„๋ฉ”์ธ ๋“ฑ๋ก๊ธฐ๊ด€(Domain Registrar)โ€ ์„น์…˜์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

Domain Name Api WHMSC ๋ชจ๋“ˆ ์„ค์ •

๋ชจ๋“ˆ ํŒŒ์ผ์ด ์˜ฌ๋ฐ”๋ฅธ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์žˆ๋‹ค๋ฉด ์—ฌ๊ธฐ์—์„œ โ€œDomain Name APIโ€๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

ํ™œ์„ฑํ™” ํ›„, ๋‹น์‚ฌ์—์„œ ์ œ๊ณตํ•œ ์‚ฌ์šฉ์ž ์ด๋ฆ„๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜์‹ญ์‹œ์˜ค.

์ €์žฅ ํ›„ ์‚ฌ์šฉ์ž ์ด๋ฆ„๊ณผ ํ˜„์žฌ ์ž”์•ก์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

ํ•„์š”ํ•œ ๊ฒฝ์šฐ, ์‚ฌ์šฉ์ž๋“ค์˜ .tr ๋„๋ฉ”์ธ ๋“ฑ๋ก์— ์‚ฌ์šฉ๋  TR ์‹ ๋ถ„ ๋ฒˆํ˜ธ ๋ฐ ์„ธ๊ธˆ ๋ฒˆํ˜ธ ์ •๋ณด๋ฅผ ๋งคํ•‘ํ•˜์‹ญ์‹œ์˜ค.

Domain Name Api ์‚ฌ์šฉ์ž ์ •๋ณด ์„ค์ •

๋„๋ฉ”์ธ ๊ฐ€๊ฒฉ ์„ค์ •

๋ชจ๋“ˆ ์„ค์ •์„ ์™„๋ฃŒํ•œ ํ›„ ์‹œ์Šคํ…œ ์„ค์ •์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

๋„๋ฉ”์ธ ๊ฐ€๊ฒฉ ์„ค์ •

ํŒ๋งคํ•  TLD๋ฅผ ์ง€์ •ํ•˜์‹ญ์‹œ์˜ค. (์˜ˆ: .com.tr)

์ž๋™ ๋“ฑ๋ก์„ ์œ„ํ•ด โ€œDomain Name APIโ€๋ฅผ ์„ ํƒํ•˜์‹ญ์‹œ์˜ค.

EPP ์ฝ”๋“œ ์˜ต์…˜์„ ์„ ํƒํ•˜์‹ญ์‹œ์˜ค.

๊ฐ€๊ฒฉ์€ ์ˆ˜๋™์œผ๋กœ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋Œ€๋Ÿ‰ ๊ฐ€๊ฒฉ(Bulk Price) ์„ค์ •๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค (๋‹ค์Œ ์„น์…˜์—์„œ ์„ค๋ช…).

๋„๋ฉ”์ธ ๊ฐ€๊ฒฉ ์„ค์ • 2

๊ณต์šฉ Whois ์„œ๋ฒ„ ๋Œ€์‹  DomainNameAPI๋ฅผ ๋„๋ฉ”์ธ ์กฐํšŒ ์†Œ์Šค๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. โ€œLookup Providerโ€ ์„น์…˜์—์„œ โ€œ๋ณ€๊ฒฝ(Change)โ€์„ ํด๋ฆญํ•œ ํ›„ โ€œDomainNameApiโ€๋ฅผ ์„ ํƒํ•˜๊ณ  ์‚ฌ์šฉํ•  TLD๋ฅผ ์ง€์ •ํ•˜์‹ญ์‹œ์˜ค.

๋Œ€๋Ÿ‰ ๊ฐ€๊ฒฉ ๋ฐ ์ž๋™ ๊ฐ€๊ฒฉ ์„ค์ •

โ€œUtilitiesโ€ ์„น์…˜์—์„œ โ€œRegistrar TLD Syncโ€๋กœ ์ด๋™ํ•˜์‹ญ์‹œ์˜ค. ๋‚˜ํƒ€๋‚˜๋Š” ํ™”๋ฉด์—์„œ โ€œDomainNameApiโ€๋ฅผ ์„ ํƒํ•œ ํ›„ ์ž ์‹œ ๊ธฐ๋‹ค๋ฆฌ์‹ญ์‹œ์˜ค.

๋‹ค์Œ ํ™”๋ฉด์—์„œ ์‹œ์Šคํ…œ์˜ ๋ชจ๋“  TLD๊ฐ€ WHMCS์˜ TLD์™€ ๋น„๊ต๋˜๋ฉฐ, ์ˆ˜์ต ๋ฐ ์†์‹ค ๋งˆ์ง„์ด ๊ณ„์‚ฐ๋˜์–ด ์ผ๊ด„ ํ‘œ์‹œ๋˜๊ณ  ๊ฐ€์ ธ์˜ค๊ธฐ๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

Domain Name Api ๊ฐ€๊ฒฉ ๋™๊ธฐํ™”

WHMCS ์„ค์น˜ ๋ฐฉ๋ฒ•

๊ฐ€๊ฒฉ ์„ค์ •

์ž์„ธํ•œ ์ •๋ณด: WHMCS TLD Sync

๊ด€๋ฆฌ์ž ๊ด€์ 

  • ๋„๋ฉ”์ธ์— ๋Œ€ํ•ด โ€œ์‚ญ์ œ ์š”์ฒญโ€์„ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋„๋ฉ”์ธ์— ๋Œ€ํ•ด โ€œ์ด์ „ ์ทจ์†Œ(Transfer Cancellation)โ€๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋„๋ฉ”์ธ์˜ ์‹ค์‹œ๊ฐ„ ์ƒํƒœ ๋ฐ ์‹œ์ž‘/์ข…๋ฃŒ ๋‚ ์งœ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์„œ๋ธŒ๋„๋ฉ”์ธ ๋ชฉ๋ก์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ถ”๊ฐ€ ํ•„๋“œ ์ •๋ณด๋ฅผ ์กฐํšŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ด€๋ฆฌ์ž ํŒจ๋„

์ผ๋ฐ˜ ์„ค์ •

์‹œ์Šคํ…œ ์„ค์ •์—์„œ โ€œ์ผ๋ฐ˜ ์„ค์ •(General Settings)โ€์œผ๋กœ ์ด๋™ํ•œ ํ›„ โ€œDomainsโ€ ํƒญ์„ ์„ ํƒํ•˜์‹ญ์‹œ์˜ค.

๊ณ ๊ฐ์ด ์ง์ ‘ ๋„๋ฉ”์ธ์„ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ ค๋ฉด โ€œAllow clients to register domains with youโ€๋ฅผ ํ™œ์„ฑํ™”ํ•˜์‹ญ์‹œ์˜ค.

๊ณ ๊ฐ์ด ์ง์ ‘ ๋„๋ฉ”์ธ์„ ์ด์ „ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ ค๋ฉด โ€œAllow clients to transfer a domain to youโ€๋ฅผ ํ™œ์„ฑํ™”ํ•˜์‹ญ์‹œ์˜ค.

๋„๋ฉ”์ธ ๋งŒ๋ฃŒ ์ „์— ๊ฐฑ์‹ ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ ค๋ฉด โ€œEnable Renewal Ordersโ€๋ฅผ ํ™œ์„ฑํ™”ํ•˜์‹ญ์‹œ์˜ค.

๊ฒฐ์ œ ์‹œ ์ž๋™์œผ๋กœ ๊ฐฑ์‹ ๋˜๋„๋ก ํ•˜๋ ค๋ฉด โ€œAuto Renew on Paymentโ€๋ฅผ ํ™œ์„ฑํ™”ํ•˜์‹ญ์‹œ์˜ค.

๊ธฐ์กด ๋„๋ฉ”์ธ์„ ์ •๊ธฐ์ ์œผ๋กœ ํ™•์ธ ๋ฐ ๋™๊ธฐํ™”ํ•˜๋ ค๋ฉด โ€œDomain Sync Enabledโ€๋ฅผ ํ™œ์„ฑํ™”ํ•˜์‹ญ์‹œ์˜ค (๊ถŒ์žฅ).

ํ„ฐํ‚ค์–ด, ํžˆ๋ธŒ๋ฆฌ์–ด, ์•„๋ž์–ด, ๋Ÿฌ์‹œ์•„์–ด ๋“ฑ์˜ ๋„๋ฉ”์ธ์„ ๊ด€๋ฆฌํ•˜๋ ค๋ฉด โ€œAllow IDN Domainsโ€๋ฅผ ํ™œ์„ฑํ™”ํ•˜์‹ญ์‹œ์˜ค.

โ€œDefault Nameserverโ€ ํ•ญ๋ชฉ์— ๋„ค์ž„์„œ๋ฒ„ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•˜์‹ญ์‹œ์˜ค.

๊ด€๋ฆฌ์ž ํŒจ๋„ 2

๋™๊ธฐํ™” ์„ค์ •

์‹œ์Šคํ…œ ์„ค์ •์—์„œ ์ž๋™ํ™” ์„ค์ •(Automation Settings)์œผ๋กœ ์ด๋™ํ•œ ํ›„ โ€œDomain Sync Settingsโ€๋ฅผ ์—ฌ์‹ญ์‹œ์˜ค.

๋„๋ฉ”์ธ ๋™๊ธฐํ™”๋ฅผ ํ™œ์„ฑํ™”ํ•˜์‹ญ์‹œ์˜ค.

๋™๊ธฐํ™” ์‹œ ๋งŒ๋ฃŒ์ผ์„ ์—…๋ฐ์ดํŠธํ•˜๋ ค๋ฉด โ€œSync Next Due Dateโ€ ์˜ต์…˜์„ ํ™œ์„ฑํ™”ํ•˜์‹ญ์‹œ์˜ค.

์‹œ์Šคํ…œ ๋ถ€ํ•˜์— ๋”ฐ๋ผ ๊ธฐํƒ€ ์„ค์ •์„ ์กฐ์ •ํ•˜์‹ญ์‹œ์˜ค.

์˜ค๋ฅ˜ โ€“ ์ƒ์„ธ ๋ณด๊ธฐ

โ€œSystem Logsโ€์—์„œ โ€œModule Logโ€ ์„น์…˜์œผ๋กœ ์ด๋™ํ•˜์‹ญ์‹œ์˜ค.

ํ•ด๋‹น ๋กœ๊ทธ๋ฅผ ์ฐพ์€ ํ›„ ๋‚ ์งœ๋ฅผ ํด๋ฆญํ•˜์‹ญ์‹œ์˜ค.

์ƒ์„ธ ์š”์ฒญ, ์‘๋‹ต ๋ฐ ํ•„ํ„ฐ๋ง๋œ ์‘๋‹ต์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

!! ์„ฑ๋Šฅ์„ ์œ„ํ•ด ์ผ์ƒ์ ์ธ ์‚ฌ์šฉ์—์„œ๋Š” ์‹œ์Šคํ…œ ๋กœ๊ทธ ๋น„ํ™œ์„ฑํ™”๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ์ •๋ณด: WHMCS Logging

๋””๋ฒ„๊น…

๋””๋ฒ„๊น…์„ ํ™œ์„ฑํ™”ํ•˜๋ ค๋ฉด โ€œUtilities // Logs // Module Logโ€๋ฅผ ํด๋ฆญํ•˜์‹ญ์‹œ์˜ค.

๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ โ€œEnable Debug Loggingโ€์„ ํด๋ฆญํ•˜์‹ญ์‹œ์˜ค. โ€œDisable Debug Loggingโ€ ๋ฒ„ํŠผ์ด ๋ณด์ด๋ฉด ์ด๋ฏธ ํ™œ์„ฑํ™”๋œ ์ƒํƒœ์ž…๋‹ˆ๋‹ค.

์„ฑ๊ณต ๋ฐ ์‹คํŒจํ•œ ๋ชจ๋“  ๋„๋ฉ”์ธ ์š”์ฒญ๊ณผ ์‘๋‹ต์€ ์ด ๋ชจ๋“ˆ์— ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค.

๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ํ•ด๋‹น ๋กœ๊ทธ์˜ ๋‚ ์งœ๋ฅผ ํด๋ฆญํ•˜์—ฌ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋™์˜์ƒ ๊ฐ€์ด๋“œ