如何了解运行ASP.NET应用程序的服务器的DNS名称?
如果我的应用程序网址为http://www.somehost.com/somepath/application.aspx
,我想获取字符串“www.somehost.com”是否存在Server,Contex,Session或Request对象的某些属性?
谢谢!
答案 0 :(得分:3)
这将为您提供托管网站的服务器的DNS IP
void GetDNSServerAddress()
{
NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface ni in nics)
{
if (ni.OperationalStatus == OperationalStatus.Up)
{
IPAddressCollection ips = ni.GetIPProperties().DnsAddresses;
foreach (System.Net.IPAddress ip in ips)
{
Console.Write(ip.ToString());
}
}
}
}
然而,在写这篇文章时,我刚看到你编辑的帖子,所以我认为这就是你所追求的简单:
string host = Request.Url.Scheme + "://" + Request.Url.Host;
希望这有帮助!
答案 1 :(得分:0)
HTTP_HOST服务器变量可以为您提供所需的信息。
Request.ServerVariables("HTTP_HOST")
答案 2 :(得分:0)
您还可以使用
获取“机器名称”System.Environment.MachineName