As with any other enhanced functionality of Windows Server 2008, web server service is provided through a role. Interestingly, as discussed in the introductory section of this chapter, the modularity of IIS has resulted in a significantly scaled-back initial installation of IIS—in fact, if you choose to install the Web Server role, which is the most basic way to get IIS code on your Windows Server 2008 machine, you receive only the following pieces of the web server software (aside from the Windows Process Activation Service):
Common HTTP services, including stubs to host static content, choose a default document for unspecific requests, browsing directories via text, and recording errors
Health and diagnostic functionality, including logging and request monitoring
Security code, including request filtering functionality (this is the old URLScan utility, which is now baked into the final release of IIS 7)
Performance tools, including Gzip-based static content compression technology
The IIS Management Console
That's it. You don't get any sort of dynamic hosting functionality with the basic Web Server role; you're limited to hosting text and simple HTML. This is the way systems will be going forward: you install a minimal set of functionalities and layer only what you require in specific scenarios on top of that base installation. This reduces overhead, improves security, and minimizes the potential attack surface of public-facing code.
But not everyone can only host static HTML content. The Application Server role takes IIS to another level and enables dynamic web content to be served from the web service. Since IIS has been scaled down in this release to its bare minimum parts, you have to add the application server role in order to access functionality like ASP.NET, .NET Framework applications, and applications based on dynamic web technologies like CardSpace, Windows Communication Foundation, Windows Presentation Foundation, and Windows Workflow Foundation.
To install the web server role:
Open Server Manager.
Click Roles in the left pane, and then click the Add Roles link in the right pane.
Click Next off the "Before You Begin" page.
On the page listing roles available for installation, select Web Server (IIS). You will then get a pop-up window explaining that you also need the Windows Process Activation Service, as shown in Figure 8-1. Click Add Required Features to continue, and then click Next.
Read the overview of the role, and then click Next to continue.
On the Select Role Services screen, shown in Figure 8-2, select the modules you would like to install along with the core IIS code. Click Next to continue.
Confirm the choices you made during the wizard, and then click Install to commence setting up the web server service.
To install the application server role:
Open Server Manager.
Click Roles in the left pane, and then click the Add Roles link in the right pane.
Click Next off the "Before You Begin" page.
On the page listing roles available for installation, select Application Server. You will then get a pop-up window explaining that you also need the .NET Framework 3.0 and a stub supporting that framework for the Windows Process Activation Service, as shown in Figure 8-3. Click Add Required Features to continue, and then click Next.
Read the overview of the role, and then click Next to continue.
On the Select Role Services screen, shown in Figure 8-4, select the modules you would like to install along with the application server functionality. Click Next to continue.
Confirm the choices you made during the wizard, and then click Install to commence setting up the web server service.