Yesterday's IIS 7 Overview session at Microsoft PDC05 was basically a replay by Bill Staples of the keynote presentation he gave at CFUNITED-05. I thought it was a pretty impressive presentation back in June, and I was just as impressed seeing it again yesterday. IIS 7 is included in Windows Vista, which is planned for release in late 2006 (client version) and early 2007 (server version):
- The IIS metabase has been eliminated; all IIS and ASP.NET configuration settings will be stored in the "web.config" XML file. This means that things such as default documents (for example, "index.cfm") and extension mappings are now included in web.config. This has a number of implications:
- It will now be possible to do "xcopy" deployment of complete web applications, including all configuration settings and content. That is, you'll be able to create a complete web application and deploy it to IIS 7 simply by copying the directory to the Windows Vista server (this includes CFML web applications running on BlueDragon.NET).
- It will be possible to put the web.config file on a shared file server to be accessed by multiple servers in a cluster. Configuration of the entire cluster can be modified simply by updating the shared web.config file.
- The web.config can be extended with user-defined schemas. For example, we'll be able to put all of the BlueDragon.NET configuration settings into web.config, which then inherits the benefits listed above.
- It no longer requires administrator privileges to update IIS 7 configuration settings for a virtual server.
- A new IIS 7 admin tool replaces the existing MMC snap-in (and IIS Manager). The new IIS 7 admin tool is basically a way to edit the web.config file, and provides the following features:
- Manage individual sites without administrator privileges (good for shared environments).
- The IIS 7 admin tool is extensible, which means we'll look into the possibility of integrating the BlueDragon.NET admin console into the IIS 7 admin tool.
- The IIS 7 admin console provides server health information, diagnostics, user infor, and generally much more info than the current MMC snap-in.
- The ISAPI extension API is essentially dead (though existing ISAPI filters and modules will continue to work via an IIS 7 compatibility module):
- It will now be possible to write web server extension modules as managed .NET code.
- ASP.NET modules/handlers can work for *all* IIS requests, not just ASP.NET requests.
- IIS is now modularized, not a single DLL, and unused modules can be removed to reduce the IIS footprint and improve security.
- The default core IIS modules can be replaced with custom user modules (Bill gave an example of replacing the default directory listing module with a custom one that he wrote).
This is some exciting stuff. I look forward to getting my hands on it (we've been promised a DVD tomorrow). There's a lot here we're going to be able to take advantage of to enhance BlueDragon.NET.