Microsoft’s Internet Information Server (IIS) is a suite of server-side programs that provide internet services to client workstations: it includes a web server, an FTP server and a NNTP server. It was launched back in February 1995 as an add-on service for NT4 and then became an on-the-CD feature in Windows 2000. It continues to ship as part of Windows XP Professional and Server 2003 (including R2), but is no longer installed by default. IIS competes head-to-head with Apache, the most popular open-source web server, which runs on a variety of Linux and Unix systems, as well as Windows. The Netcraft survey (www.netcraft.com) shows more than 100 million websites currently on the internet, of which around 60% run Apache and 31% run IIS, although IIS usage increased over the past year.

IIS versions 5 and 6 were important for .NET users, as they both supported the .NET Framework via ASP.NET (which I examined here in issue 138). IIS7 is the latest incarnation and is due to ship as a component of both Windows Vista and, in due course, Longhorn server – there are no plans to back-port IIS7 onto earlier versions of Windows. Microsoft has set up a test version of IIS7 that you can play with over the internet at http://VirtualLabs.IIS.NET
Historically, it was with IIS4 on Windows NT4 that Microsoft first delivered a decent web server platform, and it got better with IIS5 on Windows 2000 Server. However, a number of scalability and manageability issues arose with IIS5, which led to a major rewrite for IIS6, delivered as part of Windows Server 2003. IIS6 introduced a new process model to improve scalability, as well as big improvements in security: indeed, IIS6 has enjoyed a rock-solid security track record, with barely a couple of security bulletins since its release more than three years ago – a huge improvement over IIS5.
With IIS7, the innovations continue, and they can be summarised as follows:
You can now install IIS7 onto a client OS (say Vista), enabling developers to build and test web applications in the same environment. IIS6 wouldn’t install on a client OS like Windows XP.
It improves server security and minimises patching. IIS7 has been factored into more than 40 feature modules, each of which can be installed independently, dramatically reducing the potential attack surface, as well as lowering its memory footprint on the server. Since smaller units are being deployed, there’s less to patch (although if it proves as reliable as IIS6, there won’t be many patches anyway).
It enables more rapid development of web applications via a new extensibility framework. IIS7’s features are based around a new set of public web server APIs that developers can use to extend, replace or add functionality. It also provides extensible event logging, configuration and administration tool feature sets, so that developers can use third-party extensions kits to create web applications with a unified look and feel.
It simplifies the deployment and configuration of web applications by providing a unified configuration system that stores all IIS and ASP.NET settings within the same single XML file (for instance, web.config). It also includes a set of managed code and scripting APIs for accessing configurations for an entire web platform, and this new configuration system supports distributed configuration files that can be stored along with website or application content.
Disclaimer: Some pages on this site may include an affiliate link. This does not effect our editorial in any way.