IIS 7.0 6大新特性:
*)模块化的网络核心允许用户增加和删除特定的功能。如果要使用服务统计构件,仅需几个模块(不包括ISAPI)。
*)一个统一标准的HTTP管道,它对应于本地管理方面的应用程序。用户可以对经典的ASP网页使用基于窗体的认证系统。 (将.net地位提升到C++一致)
*)用户可以建立自己的IHttpModule以及IHttpHandlers,并且把它们插入到统一的管道。 (集成模式性能更好,且与C++的isap一致)
*)新款分布式的XML设置系统,它利用了ASP.NET的设置系统的优点。 (IIS6元数据导入导出,IIS7xml直接copy)
*)改善的诊断和问题解答机制,包括了新Runtime状态以及跟踪功能。 (IIS6元数据导入导出)
*)新型可扩展,面向任务的管理员用户界面和api (IIS 管理器或 appcmd.exe 命令行工具, 以前是asp脚本+com,现在使用Microsoft.Web.Administration,地位提升)
IIS 7.0上的ASP.NET本身也从以ISAPI的实现形式变成直接接入IIS7管道的模块:
这带来诸多好处:
1) 你现在可以对服务器的所有请求(例如, .htm,.php,.jsp文件)使用ASP.NET表单认证,成员/角色,以及任何其他特性。
2) 你现在可以轻松地重写任何web请求的URL或者以种种有趣的方式对请求做改动。
3) 你可以使用VB或C#替换或扩展任何现有的IIS特性(例如,你可以除去内置的目录清单模块,接入你自己的模块)。
这确实给.NET开发人员带来了无穷多的扩展性机会。
http://blog.csdn.net/vince6799/article/details/7336220
====================================
Microsoft.Web.Administration in IIS 7
微软为管理IIS7提供了非常强大的API——Microsoft.Web.Administration,可以很方便的让我们以编程的方式管理,设定IIS 7的各项配置。Microsoft.Web.Administration.dll位于IIS的目录(%WinDir%\System32\InetSrv)下,在项目中添加对其的引用后您就可以使用这些API了。下图显示了Microsoft.Web.Administration.dll中的主要对象。
下面通过几个简单的例子来体验Microsoft.Web.Administration的功能(本文所有代码均在 windows7 + iis7.5 下测试通过)
创建站点
- ServerManager iisManager = new ServerManager();
- iisManager.Sites.Add("1000seocom", "http", "*:80:","d:\\1000seocom");
- iisManager.CommitChanges();
ServerManager iisManager = new ServerManager();
iisManager.Sites.Add("1000seocom", "http", "*:80:", "d:\\1000seocom");
iisManager.CommitChanges();
将一个应用程序(Application)添加到一个站点
- ServerManager iisManager = new ServerManager();
- iisManager.Sites["1000seocom"].Applications.Add("/blog","d:\\blog");
- iisManager.CommitChanges();
ServerManager iisManager = new ServerManager();
iisManager.Sites["1000seocom"].Applications.Add("/blog", "d:\\blog");
iisManager.CommitChanges();
建立一个虚拟目录(Virtual Directory)
- ServerManager iisManager = new ServerManager();
- Microsoft.Web.Administration.Application app = iisManager.Sites["1000seocom"].Applications["/blog"];
- app.VirtualDirectories.Add("/images","d:\\virdir");
- iisManager.CommitChanges();
ServerManager iisManager = new ServerManager();
Microsoft.Web.Administration.Application app = iisManager.Sites["1000seocom"].Applications["/blog"];
app.VirtualDirectories.Add("/images", "d:\\virdir");
iisManager.CommitChanges();
运行状态控制
停止站点
- ServerManager iisManager = new ServerManager();
- iisManager.Sites["1000seocom"].Stop();
ServerManager iisManager = new ServerManager();
iisManager.Sites["1000seocom"].Stop();
启动站点
- ServerManager iisManager = new ServerManager();
- iisManager.Sites["1000seocom"].Start();
ServerManager iisManager = new ServerManager();
iisManager.Sites["1000seocom"].Start();
回收应用程序池
- ServerManager iisManager = new ServerManager();
- iisManager.ApplicationPools["DefaultAppPool"].Recycle();
ServerManager iisManager = new ServerManager();
iisManager.ApplicationPools["DefaultAppPool"].Recycle();
得到当前正在处理的请求
- ServerManager iisManager = new ServerManager();
- StringBuilder str = new StringBuilder();
- foreach (WorkerProcess w3wpin iisManager.WorkerProcesses)
- {
- str.Append("W3WP "+ w3wp.ProcessId+"\n");
- foreach (Request request in w3wp.GetRequests(0))
- {
- str.Append(request.Url+ "-" +request.ClientIPAddr+" "+request.TimeElapsed+" "+request.TimeInState+"\n");
- }
- }
- MessageBox.Show(str.ToString());
ServerManager iisManager = new ServerManager();
StringBuilder str = new StringBuilder();
foreach (WorkerProcess w3wp in iisManager.WorkerProcesses)
{
str.Append("W3WP "+ w3wp.ProcessId+"\n");
foreach (Request request in w3wp.GetRequests(0))
{
str.Append(request.Url+ "-" +request.ClientIPAddr+" "+request.TimeElapsed+" "+request.TimeInState+"\n");
}
}
MessageBox.Show(str.ToString());
更多功能请参考:http://msdn.microsoft.com/zh-cn/library/ms613523(v=vs.90).aspx
==================
http://blog.chinaunix.net/uid-20344928-id-3182337.html
=============================
从6月12日起,Microsoft.com已经在Windows Server 2008 Beta 3上运行了3个月。这意味着,运营www.microsoft.com的80台服务器中的78台运行W2K8和IIS7.0。为什么只有78台?这是为了运行W2K3和IIS6作为比对。IIS7.0中的十大改进是:
- 简单、可配置的安��命令行
- 更强的兼容性(99%+)
- Metabase被弃用
- 集中式管理
- 委派配置
- AppCmd和其他新的管理选项
- 失败请求追踪
- 请求过滤器
- UNC内容
- 动态内容的输出缓存
更多详细内容可以参阅Microsoft.com运营团队的blog: http://blogs.technet.com/mscom/archive/2007/09/07/the-tasty-morsels-found-in-dogfood-mscom-ops-top-10-changes-in-iis7-0.aspx