.NET获取服务器信息,如服务器版本、IIS等

.NET获取服务器信息,如服务器版本、IIS等

.NET获取服务器信息,如服务器版本、IIS版本、数据库大小、网站系统空间占用大小、网站部署路径等等

.NET获取系统环境信息

#region 返回操作系统信息 .net版本 数据库大小  程序大小等方法
/// <summary>
/// 获取服务器系统信息
/// </summary>
public string GetOSVersion()
    {
        OperatingSystem os = Environment.OSVersion;
return os.ToString();
    }
/// <summary>
/// 获取服务器.net版本
/// </summary>
/// <returns></returns>
public string GetNetVersion()
    {
return Environment.Version.ToString();
    }
/// <summary>
/// 获取数据库大小
/// </summary>
/// <returns></returns>
public string GetDataBaseLength()
    {
string fileFullPath = HttpContext.Current.Server.MapPath("~/App_Data/XXX.mdf");
        FileInfo file = new FileInfo(fileFullPath);
return (Convert.ToDouble(file.Length) / 1024 / 1024).ToString("N") + "M";
    }
/// <summary>
/// 递归文件目录,返回目录下所有文件大小
/// </summary>
/// <param name="d">传入的路径</param>
/// <returns></returns>
public static long DirSize(DirectoryInfo d)
    {
long Size = 0;
// 所有文件大小.
        FileInfo[] fis = d.GetFiles();
foreach (FileInfo fi in fis)
        {
            Size += fi.Length;
        }
// 遍历出当前目录的所有文件夹.
        DirectoryInfo[] dis = d.GetDirectories();
foreach (DirectoryInfo di in dis)
        {
            Size += DirSize(di);   //这就用到递归了,调用父方法,注意,这里并不是直接返回值,而是调用父返回来的
        }
return (Size);
    }
/// <summary>
/// 调用DirSize方法
/// </summary>
/// <returns></returns>
public string GetDirSize()
    {
string fullPath = HttpContext.Current.Server.MapPath("~/");
        DirectoryInfo d = new DirectoryInfo(fullPath);
return (Convert.ToDouble(DirSize(d)) / 1024 / 1024).ToString("N") + "M";
    }
#endregion
#region 服务器相关属性
/// <summary>
/// 服务器名称
/// </summary>
public string MachineName
    {
get { return HttpContext.Current.Server.MachineName; }
    }
/// <summary>
/// 服务器操作系统
/// </summary>
public string ServiveSystem
    {
get { return GetOSVersion(); }
    }
/// <summary>
/// 服务器IP地址
/// </summary>
public string ServiceIP
    {
get { return HttpContext.Current.Request.ServerVariables["LOCAL_ADDR"]; }
    }
/// <summary>
/// 网站端口号
/// </summary>
public string ServicePort
    {
get { return HttpContext.Current.Request.ServerVariables["SERVER_PORT"]; }
    }
/// <summary>
/// 服务器IIS版本
/// </summary>
public string ServiceIIS
    {
get { return HttpContext.Current.Request.ServerVariables["SERVER_SOFTWARE"]; }
    }
/// <summary>
/// 服务器.NET解释引擎版本
/// </summary>
public string ServiceNetVersion
    {
get { return GetNetVersion(); }
    }
/// <summary>
/// 服务器时间
/// </summary>
public string ServiceTime
    {
get { return DateTime.Now.ToString(); }
    }
/// <summary>
/// 网站绝对路径
/// </summary>
public string ServicePath
    {
get { return HttpContext.Current.Request.ServerVariables["PATH_TRANSLATED"].ToString(); }
    }
/// <summary>
/// 数据库大小
/// </summary>
public string DataBaseLength
    {
get { return GetDataBaseLength(); }
    }
/// <summary>
/// 获取程序占用空间大小
/// </summary>
public string GetSystemLength
    {
get { return GetDirSize(); }
    }
#endregion

.net遍历服务所有变量信息

<table colspan="8" cellpadding="5" border="0">
<tr>
<td align="CENTER" bgcolor="#800000" width="20%">
<font style="arial narrow" color="#ffffff" size="2">环境变量名</font>
</td>
<td align="CENTER" width="80%" bgcolor="#800000">
<font style="arial narrow" color="#ffffff" size="2">结果</font>
</td>
</tr>
<%
foreach (string val in Request.ServerVariables)
{
Response.Write("<tr>");
Response.Write("<td bgcolor=‘f7efde‘ align=CENTER> <font style=‘ARIAL NARROW‘ size=‘2‘>");
Response.Write(val);
Response.Write("</font></td>");
Response.Write("<td bgcolor=‘f7efde‘ align=CENTER> <font style=‘ARIAL NARROW‘ size=‘2‘>");
Response.Write(Request.ServerVariables[val]);
Response.Write("</font></td></tr>");
}        %>
</table>

转载请注明出处[http://samlin.cnblogs.com/

分享到:

当当计算书籍 5-8折

刚做的招标网:八爪鱼招标网 请大家多意见

标签: 服务器, 系统环境

时间: 2024-08-08 09:30:47

.NET获取服务器信息,如服务器版本、IIS等的相关文章

纯JAVA环境获取APK信息(包名,版本,版本号,大小,权限...),纯JAVA语言编写PC端获取APK信息

纯JAVA环境获取APK信息:包名,版本,版本号,大小,权限... 纯Java环境获取APK信息需要两个包:AXMLPrinter2.jar 跟jdom.jar,用于反编译XML和解析XML的 项目目录 这个类是获取APK信息的 public class ApkUtil { private static final Namespace NS = Namespace.getNamespace("http://schemas.android.com/apk/res/android"); @

Java——ProcessBuilder类的使用及获取APK信息

这次是想获取APK包的版本号,包名,大小等信息.其实有两种方法: 一种是: 纯JAVA环境获取APK信息(包名,版本,版本号,大小,权限...),纯JAVA语言编写PC端获取APK信息 . 这篇文章是通过解析APK中的xml获取信息的. 其实还有另外一种方法是使用android开发工具里面的aapt.exe文件, C:/getapkinfo/aapt.exe d badging D:/new/test.apk 指定好aapt文件的路径  后面两个为参数  后面为apk包的位置. 这是在Dos窗口

华为云 获取 弹性云服务器 信息 python版本

华为云 获取 弹性云服务器 信息 安装SDK SDK 下载地址 https://github.com/huaweicloud/huaweicloud-sdk-python cd pip install -r requirements.txt python3.6 setup.py install 代码 from openstack import connection # create connection username = "hequan" password = "hequ

PHP获取当前服务器信息的基本语句

下面是PHP获取当前服务器信息的基本语句. PHP程式版本: <?PHP echo PHP_VERSION; ?> ZEND版本: <?PHP echo zend_version(); ?> MYSQL支持: <?php echo function_exists (mysql_close)?"是":"否"; ?> MySQL数据库持续连接 : <?php echo @get_cfg_var("mysql.allow

基于iDRAC开发全新接口,用于获取服务器更详细的信息(适用于dell服务器,其他服务器未测试)

github地址 https://github.com/zhangliu520/pyidrac pyidrac 由于ipmi 获取服务器硬件信息不够全面,于是自己基于iDRAC开发全新接口.idrac服务器详细信息获取获取数据包括(电池,mac地址,内核详情,cpu详情,内存详情,磁盘详情,系统名,操作系统类型等等)其它数据待开发. 使用范围 适用于dell服务器,其他服务器资产信息待测定.我会不断的更新bug. python版本 python2,python3 使用说明 安装 pip inst

获取两台linux服务器的cpu、内存、磁盘、网络等信息,可能不是最好的逻辑,但是对于小白的我自己动手收货不少

# coding: utf-8""" 作者:xiaofeng 功能:自动获取阿里云服务器的cpu.内存.磁盘.网络流量等信息,定时生产一个excel文件 版本:v1.1.5 日期:21/11/2019 版本迭代:各模块封装成方法,其中优化cpu计算方法"""import os,timeimport paramikoimport datetimeimport reimport xlwtdef main(): print("欢迎使用Linu

python使用psutil获取服务器信息

>>> import psutil 获取cpu信息>>> psutil.cpu_times()scputimes(user=128258.38, nice=12.29, system=88369.31, idle=6713420.33, iowait=3290.63, irq=1069.04, softirq=3368.56, steal=0.0, guest=0.0) >>> psutil.cpu_times().idle 6717807.87 获取

asp.net服务器信息获取

设计图 代码 protected void Page_Load(object sender, EventArgs e) { string a, b; a = Session["user"] + ""; b = Session["password"] + ""; if(!((a=="张三")&&(b=="123"))) Response.Redirect("log

通过python自动化获取服务器信息,并写入到excel

博主目前在电信外包工作,比较坑,因为涉及到统计服务器信息的工作,而且统计服务器的个数大概有几百台,统计之后还要将信息全部写入到excel里去,如果是手工一个个去做,起码做一个月吧,前提无法使用ansible等工作,只能通过CRT的方式,一个个手工登上去,然后看服务器上所有进程的信息,包括进程名称,进程端口号,启停方式,工作路径.一台服务器上可能有上万个程序,你一个个手工搞,并将信息录入到excel,一个服务器就能把你搞崩溃. 那面对这个问题,我思考了需要分两步走,其一,需要获取服务器的信息文件,