我想從用戶當前所在的站點名稱獲得域名擴展(至少我希望它是這樣調用的)。獲取頂級域名的簡單方法?
所以從www.bbc.co.uk它co.uk和 www.google.com = .COM https://stackoverflow.com/questions/ask = .COM
等
尤其是與雙名的那些(像co.uk)讓我頭痛....
編輯 據我所知,co.uk不是頂級域名?這讓生活更輕鬆!在標題
我想從用戶當前所在的站點名稱獲得域名擴展(至少我希望它是這樣調用的)。獲取頂級域名的簡單方法?
所以從www.bbc.co.uk它co.uk和 www.google.com = .COM https://stackoverflow.com/questions/ask = .COM
等
尤其是與雙名的那些(像co.uk)讓我頭痛....
編輯 據我所知,co.uk不是頂級域名?這讓生活更輕鬆!在標題
它之所以被稱爲頂級域名(TLD),但對BBC說,這只是「英國」,而不是「co.uk」。
你想不遵循一個標準,所以你需要一個表來檢查什麼「勢」僞頂級域名的
但是,這並沒有真正回答這個問題,尤其不能co.uk情況。 – 2010-06-03 19:54:36
它被稱爲頂級域名,然後是第一個子域名,並非每個人都使用。這是因爲第一個DNS做了分割清單上的反向條目,路線比較快,所以它會一直解析到
uk -> co -> example -> www
從Mozilla中PublicSuffix項目是解決方案。它是TLD的一個保留列表。
您可以使用以下nuget包Nager.PublicSuffix。
PM> Install-Package Nager.PublicSuffix
例
var domainParser = new DomainParser(new WebTldRuleProvider());
var domainName = domainParser.Get("sub.test.co.uk");
//domainName.Domain = "test";
//domainName.Hostname = "sub.test.co.uk";
//domainName.RegistrableDomain = "test.co.uk";
//domainName.SubDomain = "sub";
//domainName.TLD = "co.uk";
謝謝,不知道。 – Michel 2010-06-03 20:44:34