문제

Something along the lines of:

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

puts "valid!" if domain_exists?("example.com")
도움이 되었습니까?

해결책

If you want to check whether a domain is registered or not, then you need to perform a Whois query. http://www.ruby-whois.org/

다른 팁

require 'socket'

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

  true
end

With ruby-whois is pretty easy:

Install gem and require.

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

a.available? => false

There is also a CLI bundled if you install it via ruby gems: ruby-whois

web page at: ruby-whois.org

You could shell out to nslookup like this:

`nslookup #{domain}`

and parse the results as text with regexes etc.

Or you can use the Socket class, specifically Socket.getaddrinfo. See previous StackOverflow answer on this very question.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top