我正在做一个网页跟踪网络应用程序,我想得到一个网站列表的规范域名。据我所知,没有好的方法来告诉一个站点的子域和顶级域的所有权在哪里开始和结束。我不确定最好的描述方式,所以这里有一个例子:
如果我拥有一个名为mysite.com的个人网址,我就能够设置www.mysite.com、cdn.mysite.com等子域。
如果我的“组”在大学里有一个网站,比如computerscience.myuni.edu,我可能也能控制www.computerscience.myuni.edu,但不能控制myuni.edu
如果我是一个庞大的企业,并且需要分散网络流量,我甚至可以使用www.acme.com、ww2.acme.com、ww3.acme.com等。
所以没有什么是确定的,但如果给我一个网址,我可能会从前面剥离www.,ww2.和cdn.,也许还有secure.,但有没有其他常见的“子域”,我没有想到,是相当常见的,通常不用于提供不同的网站?
我猜我只是想找出获得一个网站真正的“规范”域名的最好方法。
发布于 2012-01-06 04:14:20
首先,您应该区分域名和网站/URL。我不认为有任何有效的方法来轻松识别网站所有者,但关于域名,可以通过它的结构来推断。
粗略地说,完全限定域名由子域名称、名称和后缀组成,在您的示例中,您希望找到规范域名(名称+后缀)。

由于域名系统是分层的,应该从头到尾读取像www.example.com.这样的完全限定域名:.com.example.www,并可以这样分解:
comexamplewww 为了确认身份,您应该按照相同的顺序进行操作:
没有列出所有公共后缀的官方数据库,但在Mozilla基金会的倡议下,已经创建了一个非官方后缀。该项目名为Public Suffix,旨在记录后缀,人们可以在该后缀下注册域名并拥有several implementations to parse the database。
如果你感兴趣,我在我的个人博客上写了一篇介绍域名系统的文章,其中我更详细地描述了域名结构:What's a domain name and what's behind the scene
https://stackoverflow.com/questions/8685629
复制相似问题