我正在开发一个网页跟踪网络应用,我想获得一个网站列表的规范域名。据我所知,没有什么好方法可以说明网站对子域名和顶级域名的所有权的起点和终点。我不确定描述它的最佳方式,所以这是一个例子:
如果我拥有个人网址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.
但有没有其他常见的“子域名”,我没想到这些是相当常见的,通常不会用来提供不同的网站?
我猜我只是想找出获得网站真正“规范”域名的最佳方式。
答案 0 :(得分:2)
首先,您应该区分域名和网站/ URL。 我认为没有任何有效的方法可以轻易识别网站所有者,但关于域名,可以通过其结构推断出来。
粗略地说,完全合格的域名由子域名,名称和后缀组成,在您的情况下,您希望找到规范域名(名称 + 后缀)。
由于域名系统是分层的,因此应该从头到尾读取像www.example.com.
这样的FQDN:.com.example.www
并且可以通过这种方式进行分解:
com
example
www
为了您的身份证明,您应该按照相同的顺序进行:
没有官方数据库列出所有公共后缀,但是在Mozilla基金会的倡议下,已经创建了一个非官方的后缀。该项目名为Public Suffix,目的是记录后缀,人们可以在其中注册域名并拥有several implementations to parse the database。
我在个人博客上写了一篇介绍域名系统的文章,如果您有兴趣,我会更详细地描述域名结构:What's a domain name and what's behind the scene