Frage

Etwas entlang der Linien von:

def domain_exists?(domain)
  # perform check
  # return true|false
end

puts "valid!" if domain_exists?("example.com")
War es hilfreich?

Lösung

Wenn Sie, ob eine Domain registriert überprüfen wollen oder nicht, dann müssen Sie eine Whois-Abfrage auszuführen. http://www.ruby-whois.org/

Andere Tipps

require 'socket'

def domain_exists?(domain)
  begin
    Socket.gethostbyname(domain)
  rescue SocketError
    return false
  end

  true
end

Mit rubin whois ist recht einfach:

gem installieren und benötigen.

a = Whois.whois ( "google.com")

a.available? => False

Es gibt auch eine CLI gebündelt, wenn Sie es über Rubin Edelsteine ??zu installieren: Rubin-whois

Web-Seite unter: ruby-whois.org

Sie könnten berappen so nslookup:

`nslookup #{domain}`

und analysiert die Ergebnisse als Text mit regulären Ausdrücken etc.

Sie können auch die Sockel Klasse, speziell Socket.getaddrinfo. Siehe vorherige Stackoverflow Antwort auf diese sehr Frage.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top