如何瞭解運行ASP.NET應用程序的服務器的DNS名稱?運行ASP.NET應用程序的服務器的DNS
我想獲得字符串「www.somehost.com」如果我的應用程序URL是http://www.somehost.com/somepath/application.aspx
是否有服務器,Contex的,會話或請求對象的某些屬性呢?
謝謝!
如何瞭解運行ASP.NET應用程序的服務器的DNS名稱?運行ASP.NET應用程序的服務器的DNS
我想獲得字符串「www.somehost.com」如果我的應用程序URL是http://www.somehost.com/somepath/application.aspx
是否有服務器,Contex的,會話或請求對象的某些屬性呢?
謝謝!
這將讓你的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;
希望這有助於!
HTTP_HOST服務器變量可以給你你需要的東西。
Request.ServerVariables("HTTP_HOST")
你也可以得到「機器名」使用
System.Environment.MachineName
域名,或域名服務器? – 2008-11-13 12:42:25
或者確實是IP地址? – 2008-11-13 12:58:04
您是否在嘗試查找網絡用戶使用的網址的域名/主機部分?或者運行ASP.NET應用程序的服務器的機器名稱?它們不一定相同。鑑於你正在考慮Request對象,我懷疑你是在URL的主機部分之後? – 2008-11-13 13:12:40