获取当前域名的根域

 1         /// <summary>
 2         /// 获取当前域名的根域
 3         /// </summary>
 4         /// <param name="url">域名地址</param>
 5         /// <returns></returns>
 6         public static string RootDomain(string url)
 7         {
 8             if (!url.StartsWith("http://") && !url.StartsWith("https://"))
 9             {
10                 url = "http://" + url;
11             }
12
13             var uri = new Uri(url);
14             string rootDomain;
15             switch (uri.HostNameType)
16             {
17                 case UriHostNameType.Dns:
18                     {
19                         if (uri.IsLoopback)
20                         {
21                             rootDomain = uri.Host;
22                         }
23                         else
24                         {
25                             string host = uri.Host;
26                             var hosts = host.Split(‘.‘);
27                             rootDomain = hosts.Length == 2 ? host : string.Format("{0}.{1}", hosts[1], hosts[2]);
28                         }
29                     }
30                     break;
31                 default:
32                     rootDomain = uri.Host;
33                     break;
34             }
35             return rootDomain;
36         }

  在网上搜索此类问题时,一般都是使用正则,且只是固定判断几个域名后缀的,例如.cn,.com,.net等,所以自己根据工作中的需求写了这个方法。
  供有需要的人参考使用。

时间: 2024-12-29 11:33:44

获取当前域名的根域的相关文章

Python网络编程小例子:使用python获取网站域名信息

Whois简介 whois(读作"Who is",非缩写)是用来查询域名的IP以及所有者等信息的传输协议.简单说,whois就是一个用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人.域名注册商).通过whois来实现对域名信息的查询.早期的whois查询多以命令列接口存在,但是现在出现了一些网页接口简化的线上查询工具,可以一次向不同的数据库查询.网页接口的查询工具仍然依赖whois协议向服务器发送查询请求,命令列接口的工具仍然被系统管理员广泛使用.whois通常

php批量检查域名是否已注册并获取注册域名的注册公司

一个小任务,给了一个包含了几千条域名的Excel,检测是否已经注册,注册的话获取注册公司,并获取对应网站是否能正常打开,最终以Excel文件呈现. 1.起初,想到的就是读取域名,通过http调用 xinnet或者是万网的 whois查询接口查询,而后将页面结果正则匹配Registrant:,registrant organization:,registrant name:字段,获取该行:后边的内容.这样的结果就是很乱,很多注册公司不用这三个字段,没有一个统一的标准来判定是否注册及注册公司. 2.

PHP获取当前域名$_SERVER[&#39;HTTP_HOST&#39;]和$_SERVER[&#39;SERVER_NAME&#39;]的区别

开发站群软件,用到了根据访问域名判断子站点的相关问题,PHP获取当前域名有两个变量 $_SERVER['HTTP_HOST'] 和 $_SERVER['SERVER_NAME'],两者的区别以及哪个更加可靠? 相同点: 当满足以下三个条件时,两者会输出相同信息. 1.服务器为80端口 2.apache的conf中ServerName设置正确 3.HTTP/1.1协议规范 不同点: 1.通常情况: $_SERVER["HTTP_HOST"] 在HTTP/1.1协议规范下,会根据客户端的H

获取一级域名

项目中需要增加获取一级域名的方法,自己借鉴网上前辈们的资料,改变成符合需求的. 分享给大家,有歧义的地方大家共同研讨,共同学习.有不足的地方,或各位有更好的见解,请多多指教! 1 import java.util.ArrayList; 2 import java.util.List; 3 import java.util.regex.Matcher; 4 import java.util.regex.Pattern; 5 6 public class GetOneYM { 7 /* 8 * 匹配

js获取当前域名、Url、相对路径和参数以及指定参数

摘自:https://www.cnblogs.com/wangdahai/p/6221399.html有修改. 一.js获取当前域名的2种方法 方法一 var domain = document.domain; 方法二 var domain = window.location.host; 注意:由于获取到的当前域名不包括http://,所以把获取到的域名赋给 a 标签的 href 时,别忘了加上http://,否则单击链接时导航会出错. 二.获取当前Url的4种方法 var url = wind

js获取当前域名、Url、相对路径和参数

一.js获取当前域名有2种方法 1.方法一 var domain = document.domain; 2.方法二 var domain = window.location.host; 3.注意问题 由于获取到的当前域名不包括 http://,所以把获取到的域名赋给 a 标签的 href 时,别忘了加上 http://,否则单击链接时导航会出错. 二.获取当前Url的4种方法 var url = window.location.href; var url = self.location.href

PHP获取来路域名

也就是加载php文件的网站域名 $url = $_SERVER["HTTP_REFERER"]; //获取完整的来路URL $str = str_replace("http://","",$url); //去掉http:// $strdomain = explode("/",$str); // 以"/"分开成数组 $domain = $strdomain[0];//取第一个"/"以前的字

获取二级域名的几种方式

接口 穷举 dns域传送 搜索引擎抓取 通过这几种方法获取之后进行去重,之后在获取c段域名,如有二级域名抓取出来. 需要解决的问题 穷举的时的dns 泛解析的问题

php 获取当前域名

#测试网址: http://localhost/blog/testurl.php?id=5 //获取域名或主机地址 echo $_SERVER['HTTP_HOST']."<br>"; #localhost //获取网页地址 echo $_SERVER['PHP_SELF']."<br>"; #/blog/testurl.php //获取网址参数 echo $_SERVER["QUERY_STRING"]."&l