ruby-on-rails - 您将如何解析 Ruby 中的 url 以获取主域?

标签 ruby-on-rails ruby parsing url dns

我希望能够使用 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/

相关文章:

ruby-on-rails - 更新到 Ruby 2.0 打破了我的 Assets 管道

python - XML 声明独立 ="yes"lxml

ruby - 在 Ruby Web 应用程序中生成报告

ruby-on-rails - 如何根据对象与其他对象属性的关系设置对象的属性?

Ruby Mocha - 如何指定 ".with"多个 ".times"

c++ - 小是美,但它也快吗?

Javascript 查找和替换 Div

javascript - AJAX + Rails 的最新技术是什么?

ruby-on-rails - 主要 :Object 的未定义方法 `root'

ruby-on-rails - Rails 4 扩展了构建方法