asp.net获取服务器信息

简介: 1.获取IP地址 服务端获取 //方法一 HttpContext.Current.Request.UserHostAddress; //方法二 HttpContext.Current.

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();//应用程序占用内存 

 

作者:Tyler Ning
出处:http://www.cnblogs.com/tylerdonet/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过以下邮箱地址williamningdong@gmail.com  联系我,非常感谢。

相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
目录
相关文章
|
3月前
|
弹性计算 网络安全 虚拟化
ECS快照问题之提取内存信息失败如何解决
阿里云ECS用户可以创建的一个虚拟机实例或硬盘的数据备份,用于数据恢复和克隆新实例;本合集将指导用户如何有效地创建和管理ECS快照,以及解决快照过程中可能遇到的问题,确保数据的安全性和可靠性。
|
2月前
|
存储 弹性计算 运维
ECS信息问题之获取信息如何解决
ECS(Elastic Compute Service,弹性计算服务)是云计算服务提供商提供的一种基础云服务,允许用户在云端获取和配置虚拟服务器。以下是ECS服务使用中的一些常见问题及其解答的合集:
ECS信息问题之获取信息如何解决
|
1天前
|
存储 Linux 网络安全
都2023年了还不了解?使用FileZilla搭建信息文件服务器(Windows7)
都2023年了还不了解?使用FileZilla搭建信息文件服务器(Windows7)
|
10天前
|
存储 运维 安全
服务器数据恢复—异常断电导致RAID5阵列信息丢失的数据恢复案例
服务器数据恢复环境: 某品牌ProLiant DL380系列服务器,服务器中有一组由6块SAS硬盘组建的RAID5阵列,WINDOWS SERVER操作系统,作为企业内部文件服务器使用。 服务器故障: 机房供电几次意外中断,服务器出现故障前最后一次异常断电重启后RAID报错,提示无法找到存储设备,进入RAID管理模块做任何操作都死机,重启服务器后问题依旧,用户联系北亚企安数据恢复中心寻求帮助。
|
15天前
|
开发框架 前端开发 JavaScript
JavaScript云LIS系统源码ASP.NET CORE 3.1 MVC + SQLserver + Redis医院实验室信息系统源码 医院云LIS系统源码
实验室信息系统(Laboratory Information System,缩写LIS)是一类用来处理实验室过程信息的软件,云LIS系统围绕临床,云LIS系统将与云HIS系统建立起高度的业务整合,以体现“以病人为中心”的设计理念,优化就诊流程,方便患者就医。
21 0
|
1月前
|
Linux
查看服务器的配置,系统,cpu等信息
查看服务器的配置,系统,cpu等信息
21 0
|
1月前
|
Linux
centos 查看服务器信息 版本cpu
centos 查看服务器信息 版本cpu
20 0
|
2月前
|
存储 数据挖掘 Windows
服务器数据恢复—异常断电导致raid信息丢失的数据恢复案例
由于机房多次断电导致一台服务器中raid阵列信息丢失。该阵列中存放的是文档,上层安装的是Windows server操作系统,没有配置ups。 因为服务器异常断电重启后,raid阵列可以正常使用,所以未引起管理员的注意。后续出现的多次异常断电导致raid报错,服务器无法找到存储设备,进入raid管理模块进行任何操作都会导致操作系统死机。管理员尝试多次重启服务器,故障依旧。
|
2月前
|
弹性计算 大数据 测试技术
2024年阿里云服务器报价参考,阿里云服务器活动优惠配置价格信息整理汇总
随着云计算技术的日益成熟,云服务器已成为众多企业和个人的首选。在众多云服务商中阿里云以其稳定的性能、高性价比而备受瞩目。今天,就为大家带来2024年最新的阿里云服务器优惠价格信息。 阿里云服务器: 轻量应用服务器及ECS优惠价格: 2核2G3M轻量应用服务器:一年62元 2核2G3M经济型e实例云服务器ECS:一年99元 2核4G通用算力型u1实例云服务器ECS:一年706.25元 2核8G通用算力型u1实例云服务器ECS:一年877.32元
|
2月前
|
弹性计算 Ubuntu Linux
2024年阿里云幻兽帕鲁Palworld游戏服务器价格信息整理总结
在探索《幻兽帕鲁》这款独特开放世界生存游戏的过程中,你是否曾想过拥有一台专属的游戏服务器,与好友一同畅享不受限的冒险体验?现在,阿里云为你提供了这一绝佳机会!
23 0