Yourwebhoster
31/01/12, 20:27
Zoals je wellicht weet heeft WHMCS standaard een limiet bij bijvoorbeeld .nl TLD's voor 10 whois requests per dag. Dit kan je omzeilen door de whois service van je registrar te gebruiken, bijvoorbeeld TransIP waar ik in dit voorbeeld er van uit zal gaan.
Requirements
WHMCS installatie
TransIP PHP API https://www.transip.nl/domeinnaam-en-webhosting/api/
Upload de TransIP API (enkel de map TransIP) naar je WHMCS installatie (bijvb www.yourdomain.tld/whmcs/TransIP (http://www.yourdomain.tld/whmcs/TransIP))
Stel het bestand TransIP/ApiSettings.php in (spreekt voor zichzelf)
Maak een bestand aan in je WHMCS installatie met de volgende inhoud, dit bestand kan je bijvoorbeeld whoisTransIP.php noemen:
<?php
require_once('Transip/DomainService.php');
if(isset($_GET['domain']) && strlen($_GET['domain']) > 0 && $_SERVER['REMOTE_ADDR'] == '127.0.0.1'){//Replace 127.0.0.1 with your external server IP (note: check if your server uses the IPv4 IP or IPV6 IP)
$domain = $_GET['domain'];
try {
// Request the WHOIS information of a domain by using the Transip_DomainService API.
$whois = Transip_DomainService::getWhois($domain);
} catch(SoapFault $e) {
// It is possible that an error occurs when connecting to the TransIP Soap API,
// those errors will be thrown as a SoapFault exception.
$whois = 'An error occurred: ' . htmlspecialchars($e->getMessage());
}
echo $whois;
} else exit;
In WHMCS is er een bestand met alle whois servers: includes/whoisservers.php. Vervang hierbij de regel met de .nl TLD door het volgende:
.nl|https://yourdomain.tld/whoisTransIP.php?domain=|HTTPREQUEST-free
Dit kan ook voor andere extenties, je hoeft alleen .nl aan te passen en free door de string waarmee de whois server aan geeft dat het domeinnaam gratis is. Een controle voor het server IP is handig omdat anders anderen zonder je whmcs een whois kunnen uitvoeren (zonder CAPTCHA indien je die aan hebt staan, dus ze kunnen vrij whois requests blijven doen als ze de bestandsnaam hebben), tenzij die ook op dezelfde server zitten. Bij ons zit op de server niet onze klanten dus deze beveiliging voldoet.
Feedback is altijd welkom maar wel opbouwend. Ik heb dit al een keer eerder gepost maar dit is wat uitgebreider.
Requirements
WHMCS installatie
TransIP PHP API https://www.transip.nl/domeinnaam-en-webhosting/api/
Upload de TransIP API (enkel de map TransIP) naar je WHMCS installatie (bijvb www.yourdomain.tld/whmcs/TransIP (http://www.yourdomain.tld/whmcs/TransIP))
Stel het bestand TransIP/ApiSettings.php in (spreekt voor zichzelf)
Maak een bestand aan in je WHMCS installatie met de volgende inhoud, dit bestand kan je bijvoorbeeld whoisTransIP.php noemen:
<?php
require_once('Transip/DomainService.php');
if(isset($_GET['domain']) && strlen($_GET['domain']) > 0 && $_SERVER['REMOTE_ADDR'] == '127.0.0.1'){//Replace 127.0.0.1 with your external server IP (note: check if your server uses the IPv4 IP or IPV6 IP)
$domain = $_GET['domain'];
try {
// Request the WHOIS information of a domain by using the Transip_DomainService API.
$whois = Transip_DomainService::getWhois($domain);
} catch(SoapFault $e) {
// It is possible that an error occurs when connecting to the TransIP Soap API,
// those errors will be thrown as a SoapFault exception.
$whois = 'An error occurred: ' . htmlspecialchars($e->getMessage());
}
echo $whois;
} else exit;
In WHMCS is er een bestand met alle whois servers: includes/whoisservers.php. Vervang hierbij de regel met de .nl TLD door het volgende:
.nl|https://yourdomain.tld/whoisTransIP.php?domain=|HTTPREQUEST-free
Dit kan ook voor andere extenties, je hoeft alleen .nl aan te passen en free door de string waarmee de whois server aan geeft dat het domeinnaam gratis is. Een controle voor het server IP is handig omdat anders anderen zonder je whmcs een whois kunnen uitvoeren (zonder CAPTCHA indien je die aan hebt staan, dus ze kunnen vrij whois requests blijven doen als ze de bestandsnaam hebben), tenzij die ook op dezelfde server zitten. Bij ons zit op de server niet onze klanten dus deze beveiliging voldoet.
Feedback is altijd welkom maar wel opbouwend. Ik heb dit al een keer eerder gepost maar dit is wat uitgebreider.