asp.net获取服务器信息

asp.net获取服务器信息

获取IP地址

服务端获取
//方法一
HttpContext.Current.Request.UserHostAddress; 

//方法二
HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];

//方法三
string strHostName = System.Net.Dns.GetHostName();
string clientIPAddress = System.Net.Dns.GetHostAddresses(strHostName).GetValue(0).ToString();

//方法四(无视代理)
HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];

//方法五
if(Context.Request.ServerVariables["HTTP_VIA"]!=null) // using proxy
{ 
     ip=Context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();  // Return real client IP.
}
else// not using proxy or can't get the Client IP
{ 
     ip=Context.Request.ServerVariables["REMOTE_ADDR"].ToString(); //While it can't get the Client IP, it will return proxy IP.
}

客户端获取
//方法六
var ip = '<!--#echo var="REMOTE_ADDR"-->';
alert("Your IP address is "+ip);

//方法七(无视代理)
function GetLocalIPAddress() { 
    var obj = null; 
    var rslt = ""; 
    try 
    { 
        obj = new ActiveXObject("rcbdyctl.Setting"); 
        rslt = obj.GetIPAddress; 
        obj = null; 
    } 
    catch(e) 
    { 
        // 
    } 

    return rslt; 
} 

asp.net中对URL的一些操作

例如当前URI为:http://www.test.com/xxx/xxx?id=1

  • 获取绝对URI的路径
    System.Web.HttpContext.Current.Request.Url.AbsolutePath (/xxx/xxx)
  • 获取绝对URI
    System.Web.HttpContext.Current.Request.Url.AbsoluteUri (www.test.com/xxx/xxx)
  • 获取服务器的主机名或IP地址和端口号
    System.Web.HttpContext.Current.Request.Url.Authority (www.test.com (127.0.0.1:80))
  • 获取实例的主机部分:
    System.Web.HttpContext.Current.Request.Url.Host (www.test.com)
  • 获取当前URI的除主机头的乘下部分:
    Request.RawUrl (/xxx/xxx?id=1)
  • 得到当前URI的?号后面的部分(查询字符串)
    Request.QueryString (id=1)
  • 得到当前URI在服务器上的原始路径 :
    Request.PhysicalPath(d:\webproject/web)
  • 上次访问的URI:
    Request.UrlReferrer(进入www.test.com页面之前的那个页面的URI)

你可能感兴趣的:(服务器,asp.net)