1.獲取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; }
2.獲取當前頁面地址信息
設當前頁完整地址是:http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli
"http://"是協議名
"www.jb51.net"是域名
"aaa"是站點名
"bbb.aspx"是頁面名(文件名)
"id=5&name=kelli"是參數
【1】獲取 完整url (協議名+域名+站點名+文件名+參數)
代碼如下:
string url=Request.Url.ToString();
url= http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli
【2】獲取 站點名+頁面名+參數:
代碼如下:
string url=Request.RawUrl;
(或 string url=Request.Url.PathAndQuery;)
url= /aaa/bbb.aspx?id=5&name=kelli
【3】獲取 站點名+頁面名:
代碼如下:
string url=HttpContext.Current.Request.Url.AbsolutePath;
(或 string url= HttpContext.Current.Request.Path;)
url= aaa/bbb.aspx
【4】獲取 域名:
代碼如下:
string url=HttpContext.Current.Request.Url.Host;
url= www.jb51.net
【5】獲取 參數:
代碼如下:
string url= HttpContext.Current.Request.Url.Query;
url= ?id=5&name=kelli
代碼如下:
Request.RawUrl:獲取客戶端請求的URL信息(不包括主機和端口)------>/Default2.aspx
Request.ApplicationPath:獲取服務器上ASP.NET應用程序的虛擬路徑。------>/
Request.CurrentExecutionFilePath:獲取當前請求的虛擬路徑。------>/Default2.aspx
Request.Path:獲取當前請求的虛擬路徑。------>/Default2.aspx
Request.PathInfo:取具有URL擴展名的資源的附加路徑信息------>
Request.PhysicalPath:獲取與請求的URL相對應的物理文件系統路徑。------>E:\temp\Default2.aspx
Request.Url.LocalPath:------>/Default2.aspx
Request.Url.AbsoluteUri:------>http://localhost:8080/Default2.aspx
Request.Url.AbsolutePath:---------------------------->/Default2.aspx
3.獲取服務器信息
protected void Page_Load(object sender, EventArgs e) { //獲取服務器名 this.serverName.Text = "http://" + Request.Url.Host; //獲取服務器IP this.serverIP.Text = Request.ServerVariables.Get("Local_Addr").ToString(); //獲取服務器操作系統版本 this.serverSystem.Text = GetSystem(); //獲取管理系統當前目錄 this.serverPath.Text = Request.PhysicalApplicationPath; //獲取服務器IIS版本 this.serverIIS.Text = Request.ServerVariables["SERVER_SOFTWARE"].ToString(); //獲取服務器當前時間 this.serverDate.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); //檢測IE版本 RegistryKey key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Internet Explorer\Version Vector"); this.serverIE.Text = key.GetValue("IE", "未檢測到").ToString(); //檢測訪問端口 this.serverPort.Text = Request.ServerVariables.Get("Server_Port").ToString(); } /// <summary> /// 獲取操作系統版本 /// </summary> /// <returns></returns> private string GetSystem() { string system = Request.ServerVariables.Get("HTTP_USER_AGENT").ToString(); string tmpSys = string.Empty; if (system.IndexOf("NT 4.0")>0) { tmpSys = "Windows NT 4.0"; } else if (system.IndexOf("NT 5.0")>0) { tmpSys = "Windows NT 5.0"; } else if (system.IndexOf("NT 6.1")>0) { tmpSys = "Windows NT 6.1"; } else { tmpSys = "未檢測到操作系統信息!"; } return tmpSys; }
3.獲取服務器信息 Label1.Text = "服務器名稱:"+Server.MachineName;//服務器名稱 Label2.Text = "服務器IP地址:" + Request.ServerVariables["LOCAL_ADDR"];//服務器IP地址 Label3.Text = "服務器域名:" + Request.ServerVariables["SERVER_NAME"];//服務器域名 Label4.Text = ".NET解釋引擎版本:" + ".NET CLR" + Environment.Version.Major + "." + Environment.Version.Minor + "." + Environment.Version.Build + "." + Environment.Version.Revision;//.NET解釋引擎版本 Label5.Text = "服務器操作系統版本:" + Environment.OSVersion.ToString();//服務器操作系統版本 Label6.Text = "服務器IIS版本:" + Request.ServerVariables["SERVER_SOFTWARE"];//服務器IIS版本 Label7.Text = "HTTP訪問端口:" + Request.ServerVariables["SERVER_PORT"];//HTTP訪問端口 Label8.Text = "虛擬目錄的絕對路徑:" + Request.ServerVariables["APPL_RHYSICAL_PATH"];//虛擬目錄的絕對路徑 Label9.Text = "執行文件的絕對路徑:" + Request.ServerVariables["PATH_TRANSLATED"];//執行文件的絕對路徑 Label10.Text = "虛擬目錄Session總數:" + Session.Contents.Count.ToString();//虛擬目錄Session總數 Label11.Text = "虛擬目錄Application總數:" + Application.Contents.Count.ToString();//虛擬目錄Application總數 Label12.Text = "域名主機:" + Request.ServerVariables["HTTP_HOST"];//域名主機 Label13.Text = "服務器區域語言:" + Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"];//服務器區域語言 Label14.Text = "用戶信息:" + Request.ServerVariables["HTTP_USER_AGENT"]; Label14.Text="CPU個數:"+Environment.GetEnvironmentVariable("NUMBER_OF_PROCESSORS");//CPU個數 Label15.Text = "CPU類型:" + Environment.GetEnvironmentVariable("PROCESSOR_IDENTIFIER");//CPU類型 Label16.Text = "進程開始時間:" + GetPrStart();//進程開始時間 Label17.Text = "AspNet 內存占用:" + GetAspNetN();//AspNet 內存占用 Label18.Text = "AspNet CPU時間:" + GetAspNetCpu();//AspNet CPU時間 Label19.Text = "FSO 文本文件讀寫:" + Check("Scripting.FileSystemObject");//FSO 文本文件讀寫 Label20.Text = "應用程序占用內存" + GetServerAppN();//應用程序占用內存