IIS 6 Administration

Let’s now take a closer look at how IIS evolved since its inception in 1995. This will help you understand the significance of some of the new features of IIS 6 and how this version can be considered a quantum leap forward from earlier versions. It’s also an interesting story of how a large company develops a new product on-the-fly, and how advances come in fits and starts.

IIS 1

The initial version of IIS was released in February 1996 for the Microsoft Windows NT 3.51 Server platform. Microsoft migrated their own microsoft.com site to IIS 1 for testing purposes prior to commercially releasing the product. This is a little-known fact to most people who complain about bugs and instabilities in Microsoft products and say they feel like beta testers who have to pay for Microsoft software prior to testing it. The reality is that Microsoft tests all new software they develop on their own in-house servers prior to releasing it commercially, and since microsoft.com is one of the largest sites in the world, this means each version of IIS gets thorough in-house testing prior to shipping. In fact, many Microsoft employees end up working with release candidates of current Microsoft Windows platforms and Microsoft Office products prior to general product release, and thus end up being (sometimes unwillingly, I suspect) beta testers for new software!

Anyway, IIS 1 included support for three popular Internet protocols: Hypertext Transfer Protocol (HTTP) for delivering web content, File Transfer Protocol (FTP) for hosting FTP sites for uploading and downloading files, and Gopher (not an acronym) for hierarchical storage and retrieval of files. It also included support for the Common Gateway Interface (GCI), a UNIX programming environment for implementing dynamic features like forms on web pages using scripting languages like Perl. Everything worked fine, but performance was less than stellar, despite Microsoft’s claim that it was the fastest web server around. Some of the features of IIS 1 included

Not bad for a first try!

IIS 2

This release marked the inclusion of IIS as a component of the new Microsoft Windows NT 4 Server platform, with its new services and enhanced Windows 95–like GUI. IIS 2 added several new features including

IIS 3

Released in December 1996 (that’s the third version released in less than a year!), Microsoft quickly touted version 3 of IIS as “40 percent faster than IIS 1” based on tests conducted by Shiloh Consulting and Haynes & Co. using SGI’s WebStone performance tool. Other tests showed that it also outperformed Netscape’s FastTrack Server and Novell’s NetWare Web Server, two other popular platforms used in enterprise environments.

Perhaps the most significant development with version 3 was the release of Microsoft’s server-side web scripting engine called Active Server Pages (ASP). ASP enabled developers to build dynamic web applications that had all the functionality of standard client/server applications while using a standard web browser for its client interface. Together with Microsoft’s powerful new ActiveX component technology (developed in reaction to the rising popularity of Sun’s Java programming environment) and two new scripting languages, Visual Basic Scripting Edition (VBScript) and JScript, essentially a knock-off of Netscape’s JavaScript, ASP was quickly embraced by the large Microsoft developer community as the wave of the future with regard to application development. ASP also supported connectivity with databases using the Open Database Connectivity (ODBC) standard and Microsoft’s new ActiveX Data Objects (ADO) technology. Because of the ease of developing ASP-enabled websites using VBScript and ODBC compared with the difficulty of creating ISAPI applications using C++ and the limitations of older Common Gateway Interface (CGI) technology, ASP became (and still is) the dominant development platform for writing dynamic web applications for IIS.

Version 3 represented a quantum leap forward for IIS, from web server to web application development platform, and it was widely embraced by businesses for this purpose. Netcraft’s statistics suggest that the popularity of IIS continued to rise after version 3 was released, while Apache began to plateau and other web servers declined in use. Other enhancements to Microsoft’s web platform strategy that appeared in version 3 included

Microsoft had gone from offering a bare-bones web server to a full web application development platform and associated tools in under a year. Not bad for a big company! Who says inertia is proportional to size?

At that time, Microsoft also expanded its line of Internet server products with the release of the initial versions of Microsoft Site Server (now Content Management Server) and Merchant Server (now Commerce Server), both of its BackOffice line of server products (now replaced by the newer .NET Enterprise Server family of products). However, these products are beyond the scope of this book.

IIS 4

Microsoft soon improved on version 3 with the Windows NT 4 Option Pack, released in March 1998. The Option Pack provided a number of enhancements both to the underlying Windows NT 4 Server operating system and to the IIS platform, including

IIS 4 marked a watershed in IIS development, with many administrators balking at the frequent upgrades and large numbers of new features they needed to cope with when deploying IIS. Many chose to stay with IIS 3 since it was stable and ran smoothly, rather than take the chance of upgrading to version 4 and seeing something break. Others saw the Option Pack enhancements as so many bells and whistles and also decided to stick with IIS 3. There were just too many service packs coming out of Redmond in the opinion of many people, though in fact all Microsoft was trying to do was make the Windows NT 4 platform more secure and reliable. Nevertheless, those who were forward-looking could see the writing on the wall and chose to upgrade, and in most cases this went smoothly enough.

Some of the enhancements that were rolled into version 4 included

There were various other enhancements as well, including a new Website Operators group for assigning users privileges for administering IIS, per-site bandwidth throttling (important in multihoming environments), configuration backup and rollback for greater reliability when IIS configurations were modified, W3C Extended Logging format (an industry standard finally adopted by Microsoft), the ability to run an ASP application in a separate memory space from the web server and from IIS itself (this helped ensure the stability of a web server running an unstable application), an improved Microsoft Virtual Machine to provide better Java support, a script debugger to facilitate debugging of ASP applications, domain blocking to restrict access to content based on domain or IP address, custom error messages for greater user usability, and so on.

IIS 5

Development of IIS on the Windows NT platform basically halted after the Option Pack was released (though several more service packs appeared for the platform to correct bugs and fix things that didn’t work in IIS). Instead, the next development in the history of the platform was version 5, which was released as part of the new Windows 2000 Server operating system two years later. The biggest difference between versions 4 and 5 was the name change: previously IIS stood for “Internet Information Server” and was considered almost a separate server application in Windows NT (though in fact it was really just an optional component), but with Windows 2000 the acronym now represented “Internet Information Services,” probably to indicate more clearly that Internet functionality was something that Microsoft had built into their new operating system from the ground up (just like Internet Explorer was supposed to be an “integrated” part of the operating system).

Apart from the name change, the most important enhancements in version 5 included

In addition, there were a few other enhancements, such as new ASP capabilities, support for the U.S. Government’s Fortezza security architecture, enhancements in scalability, and so on. IIS 5 was clearly nothing revolutionary, but it did represent a polishing and fine-tuning of the product that led some to upgrade from earlier versions.

IIS 5.1

Before I get to version 6, which is what this book is all about, we’ll briefly mention an interim release called IIS 5.1. This version is essentially a scaled-down and slightly enhanced version of IIS 5 and is available only on the Windows XP Professional desktop platform. It’s a little hard to know why Microsoft released this version, as few people need a stripped-down web server on their desktop machine. Web developers using FrontPage 2002 are probably about the only ones who would use this version, but any real web production company would prefer tying their developers into a real IIS 5 server. Basically, IIS 5.1 on Windows XP is to IIS 6 on Windows Server 2003 as Personal Web Server (PWS) on Windows NT Workstation is to IIS 4 on Windows NT Server. In other words, IIS 5.1 is about as unnecessary for the Windows XP/ 2003 platform as PWS was for the Windows NT platform. For the sake of being complete, I should mention that Windows 2000 Professional also had a scaled-down version of IIS 5 included with it, which was unfortunately also called IIS 5.

Категории