IIS 7管理API——Microsoft.Web.Administration介绍

原文:http://www.cnblogs.com/dflying/archive/2006/04/17/377276.html

本文翻译整理自Carlos Aguilar Mares的blog文章:Microsoft.Web.Administration in IIS 7

请注意本文的内容均基于Windows Vista Beta 2版本,在正式的发布版本中可能会有所改变。

Microsoft中提供了管理IIS7的一些非常强大的API——Microsoft.Web.Administration,可以很方便的让我们以编程的方式管理,设定IIS
7的各项配置。Microsoft.Web.Administration.dll位于IIS的目录(%WinDir%\System32\InetSrv)下,在项目中添加对其的引用后您就可以使用这些API了。下图显示了Microsoft.Web.Administration.dll中的主要对象。

让我们通过几个例子来使用Microsoft.Web.Administration,下面的例子均非常易懂,我就不再过多解释了。

建立一个站点(Site)

ServerManager iisManager = new ServerManager();
iisManager.Sites.Add("NewSite", "http", "*:8080:", "d:\\MySite");
iisManager.Update();

将一个应用程序(Application)添加到一个站点

ServerManager iisManager = new ServerManager();
iisManager.Sites["NewSite"].Applications.Add("/Sales", "d:\\MyApp");
iisManager.Update();

建立一个虚拟目录(Virtual Directory)

ServerManager iisManager = new ServerManager();
Application app = iisManager.Sites["NewSite"].Applications["/Sales"];
app.VirtualDirectories.Add("/VDir", "d:\\MyVDir");
iisManager.Update();

运行时控制:停止一个站点

ServerManager iisManager = new ServerManager();
iisManager.Sites["NewSite"].Stop();

运行时控制:回收应用程序池(Recyciling an Application
Pool)

ServerManager iisManager = new ServerManager();
iisManager.ApplicationPools["DefaultAppPool"].Recycle();

运行时控制:得到当前正在处理的请求

ServerManager iisManager = new ServerManager();
foreach(WorkerProcess w3wp in iisManager.WorkerProcesses) {
    Console.WriteLine("W3WP ({0})", w3wp.ProcessId);
            
    foreach (Request request in w3wp.GetRequests(0)) {
        Console.WriteLine("{0} - {1},{2},{3}",
                    request.Url,
                    request.ClientIPAddr,
                    request.TimeElapsed,
                    request.TimeInState);
    }
}

还有一个有用之处是Microsoft.Web.Administration提供了对*.config(例如web.config)文件的编辑功能,让您再也不用像修改普通XML文件一样修改*.config了。但是原作者说他将在今后的Post中详细说明,我也只暂且写到这里了。

IIS 7管理API——Microsoft.Web.Administration介绍,布布扣,bubuko.com

时间: 2024-10-09 23:08:39

IIS 7管理API——Microsoft.Web.Administration介绍的相关文章

Microsoft.Web.Administration in IIS

http://blogs.msdn.com/b/carlosag/archive/2006/04/17/microsoftwebadministration.aspx 最好使用在IIS8中,因为为每一个application pool 都有自己独立的sandbox环境. 这些sandbox运行在不同的用户标识下,在进程层面限制这些程序所能占用的最大资源量,其中包括CPU使用率. Microsoft.Web.Administration in IIS

IIS7 Microsoft.Web.Administration 创建Application问题

在使用DirectoryEntry操作IIS时,可以设置很多属性.但使用Microsoft.Web.Administration中的一些类时,不知道在哪设置.例如:AccessScript,AccessRead,目录浏览,匿名访问等属性.我现在写的代码如下: using(ServerManager sm = new ServerManager()) { ApplicationPool newPool = sm.ApplicationPools["NewPool"]; if (newPo

Microsoft Azure Web Sites应用与实践【2】—— 通过本地IIS 远程管理Microsoft Azure Web Site

Microsoft Azure Web Sites应用与实践 系列: [1]—— 打造你的第一个Microsoft Azure Website [2]—— 通过本地IIS 远程管理Microsoft Azure Web Site [3]—— 通过Visual Studio Online在线编辑Microsoft Azure 网站 通过本地IIS 远程管理Microsoft Azure Web Site 在上一篇博文中,我们介绍了Microsoft Azure Web Site的快速生成.假如您之

发布Web时,IIS访问Web,未能加载文件或程序集“Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad

出现该错误的原因:Visual Studio 创建MVC项目时,选择的是Empty. 解决方案: 1.直接网站上下载或者在其他MVC项目的bin 文件夹下找到这个dll,复制到你的bin文件夹下即可. 2.VisualStudio 打开项目,选择菜单 [工具]-> 库程序包管理器 -> 程序包管理器控制台. 在打开的控制台窗口,默认项目选择你当前报错的项目.(需要注意不要选错项目,一般报错的项目是MVC项目或者WebAPI项目) 看到一个PM> ,复制 Install-Package M

IIS服务器 远程发布(Web Deploy)配置 VS2010 开发环境 Windows Server 2008服务器系统

sp.net 网站有三种常用的发布方式:分别是拷贝开发机上发布好的文件到服务器硬盘上.打包成安装程序到服务器上安装.通过Visual Studio 开发平台远程发布到服务器. 在asp.net网站的开发阶段,经常需要将系统发布到开发者所在局域网的服务器上,供客户和项目负责人预览.之前都是在开发机上发布好之后再拷贝到服务器上部署,因为开 发阶段系统的更新很快,每次都拷贝文件很麻烦.于是开始研究VS2010发布到远程IIS服务器的方法,经过在网上查找相关资料和亲身实践成功的在Windows Serv

Java中常见的5种WEB服务器介绍

这篇文章主要介绍了Java中常见的5种WEB服务器介绍,它们分别是Tomcat.Resin.JBoss.WebSphere.WebLogic,需要的朋友可以参考下 Web服务器是运行及发布Web应用的容器,只有将开发的Web项目放置到该容器中,才能使网络中的所有用户通过浏览器进行访问.开发Java Web应用所采用的服务器主要是与JSP/Servlet兼容的Web服务器,比较常用的有Tomcat.Resin.JBoss.WebSphere 和 WebLogic 等,下面将分别进行介绍. Tomc

RDIFramework.NET Web版介绍

RDIFramework.NET  Web版介绍 B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件.这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发.维护和使用.客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安装Oracle.Sybase.Informix或 SQL Server等数据库.浏览器通过W

(转)使用Microsoft Web Application Stress Tool对web进行压力测试

http://www.blogjava.net/crespochen/archive/2009/06/02/279538.html Web压力测试是目前比较流行的话题,利用Web压力测试可以有效地测试一些Web服务器的运行状态和响应时间等等,对于Web服务器的承受力测试是个非常好的手法.Web 压力测试通常是利用一些工具,例如微软的Web Application Stress.Linux下的siege.功能全面的Web-CT等等,这些都是非常优秀的Web压力测试工具. 虽然这些工具给我们测试服务

Shiro 简介(认证、授权、加密、会话管理、与 Web 集成、缓存等)

https://www.w3cschool.cn/shiro/ Shiro 简介 简介 Apache Shiro 是 Java 的一个安全框架.目前,使用 Apache Shiro 的人越来越多,因为它相当简单,对比 Spring Security,可能没有 Spring Security 做的功能强大,但是在实际工作时可能并不需要那么复杂的东西,所以使用小而简单的 Shiro 就足够了.对于它俩到底哪个好,这个不必纠结,能更简单的解决项目问题就好了. 本教程只介绍基本的 Shiro 使用,不会