Si tengo un dominio como www.example.com
y quiero verificar si está disponible usando registros DNS (no whois) ...compruebe si un dominio está disponible o no usando PHP?
¿Es posible hacer esto usando PHP?
Si tengo un dominio como www.example.com
y quiero verificar si está disponible usando registros DNS (no whois) ...compruebe si un dominio está disponible o no usando PHP?
¿Es posible hacer esto usando PHP?
Puede utilizar checkdnsrr o Gethostbyname:
Documentación:
http://www.php.net/gethostbyname
Ejemplo checkdnsrr:
<?php
if (checkdnsrr('example.com.', 'ANY')) {
echo "DNS Record found";
}
else {
echo "NO DNS Record found";
}
?>
Ejemplo Gethostbyname:
<?php
$domain = 'example.com';
if (gethostbyname($domain) != $domain) {
echo "DNS Record found";
}
else {
echo "NO DNS Record found";
}
?>
Esto se muestra como encontrado para todo ... ejemplo - if (checkdnsrr ('examjhkasdjkhbasdle.com', 'ANY')) { echo "Se encontró el registro DNS"; } else { echo "NO se encontró el registro DNS"; } – David19801
aquí está el segundo ejemplo usando gethostbyname: Php $ domain = 'asdasdxample.com'; if (gethostbyname ($ domain)! = $ Domain) { echo "Se encontró el registro DNS"; } else { echo "NO se encontró el registro DNS"; } ?> – favo
Solución: para que checkdnsrr funcione, debe agregar un punto después del nombre de dominio, ejemplo: checkdnsrr ('example.com.', "ANY") – David19801
parece que es en la librería PHP estándar, compruebe esta función http://php.net/manual/en/function.dns-get-record.php
Algunas de las API que hará el trabajo.
http://www.whoisxmlapi.com/domain-availability.php
que debería ir para este paquete Domain-Availability es apoyar a una gran cantidad de dominios de nivel superior y está escrito en una forma orientada a objetos .
Depende de lo que quiere decir con "disponible". Si quiere decir disponible para el registro, no es posible determinarlo solo en base a la información de DNS. El sistema whois debe ser usado. Una forma fácil de probar es tomar un nombre de dominio no utilizado y establecer los servidores de nombres a algo inválido. DNS no estará disponible, pero el dominio aún no está disponible para el registro. Acabo de probar las sugerencias de checkdnsrr(), gethostbyname() y dns_get_record(). Todos muestran que no se devuelve DNS para un dominio que no se puede registrar.
La siguiente pregunta ofrece algunos detalles más: Checking if a domain name is registered
Si por "disponibles", que significa disponible para su compra o registro, no se puede determinar esto utilizando DNS de forma fiable. Por ejemplo, 'moose9moose2.ph' está disponible, pero tiene un registro A. Mientras que 'ph.moose9moose2' no tiene registros DNS, pero no está disponible para el registro. Puede intentar agregar reglas para cubrir todos los casos posibles, pero es probable que nunca termine. –
@David, correcto, pero si dns no es suficiente, ¿qué recomendarías en su lugar? – David19801
Consulte la pregunta que duplicó: Whois. – KingCrunch