我希望能够使用 Ruby 解析任何 URL 以获取没有 www
的域的主要部分(只是 example.com
)
最佳答案
请注意没有算法方法可以找到可以为特定顶级域注册域的最高级别(每个注册管理机构的政策不同),唯一的方法是创建所有顶级域的列表以及域可以注册的级别。
这就是为什么 Public Suffix List存在。
我是 PublicSuffix 的作者,一个将域分解为不同部分的 Ruby 库。
举个例子
require 'uri/http'
uri = URI.parse("http://toolbar.google.com")
domain = PublicSuffix.parse(uri.host)
# => "toolbar.google.com"
domain.domain
# => "google.com"
uri = URI.parse("http://www.google.co.uk")
domain = PublicSuffix.parse(uri.host)
# => "www.google.co.uk"
domain.domain
# => "google.co.uk"
关于ruby-on-rails - 您将如何解析 Ruby 中的 url 以获取主域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6674230/