IIS 8.0 Express Readme

By Robert McMurray

May 1, 2012

Contents

Overview

Internet Information Services (IIS) 8.0 Express is a free, simple and self-contained version of IIS that is optimized for developers. IIS 8.0 Express makes it easy to use the most current version of IIS to develop and test websites in development tools like Visual Studio and WebMatrix. IIS 8.0 Express has all the core capabilities of IIS 8 and above as well as additional features to ease website development including:

  • IIS 8.0 Express doesn't run as a service or require administrative privileges to perform most tasks
  • IIS 8.0 Express works well with ASP.NET and PHP applications
  • Multiple users of IIS 8.0 Express can work independently on the same computer

Installation

You can install IIS 8.0 Express through the Microsoft Download Center by using the following URL:

Upgrading from IIS 7.5 Express

If you already have IIS 7.5 Express installed when you install IIS 8.0 Express, the setup program will replace your IIS 7.5 Express installation with IIS 8.0 Express. Having IIS 7.5 Express and IIS 8.0 Express installed at the same time is not supported.

When you install IIS 8.0 Express on a 64-bit system, both the 32-bit and 64-bit versions of IIS 8.0 Express will be installed respectively in the "%ProgramFiles(x86)%\IIS Express" and "%ProgramFiles%\IIS Express" folders.

Supported Platforms and Architectures

IIS 8.0 Express is supported on the following operating systems:

  • Supported Native Platforms
    • Windows 8 Client (Intel/AMD) 32-bit/64-bit
    • Windows Server 2012 (Intel/AMD) 64-bit
  • Supported Down-level Platforms
    • Windows 7 (x86 and x64)
    • Windows Server 2008 R2 (x86 and x64)
    • Windows Vista SP1 and later (x86 and x64)
    • Windows Server 2008 (x86 and x64)

IIS 8.0 Express is not supported on the following operating systems:

  • Windows Server 2003
  • Windows XP

For these unsupported operating systems, you can continue to use IIS 7.5 Express.

Changes to IIS 8.0 Express

New Features

IIS 8.0 Express supports the following new features:

  • X64 Support
    • IIS 8.0 Express supports both 32-bit and 64-bit architectures.
      • Shared Features with IIS 8.0
        • IIS 8.0 Express shares a great number of features with the full version of IIS; for example, IIS 8.0 Express uses many of the same binaries, configuration files, and error codes as the full version of IIS, so migrating projects between your development environment and your production environment should be easier than ever.
      • Changing the User Home Directory
        • IIS 8.0 Express supports changing the user's home directory, which is mapped to the %IIS_USER_HOME% variable in configuration. By default this path is located at %UserProfile%\Documents\IISExpress, but users can change this by setting a CustomUserHome registry property in HKCU\Software\Microsoft\IISExpress, or by specifying the "/userhome" parameter when launching iisexpress.exe.
      • WebSocket Support
      • AppCmd Support for editing multiple configuration files
        • The AppCmd utility now supports a "/AppHostConfig" parameter, which makes it possible to use AppCmd to edit multiple ApplicationHost.config files and not just the primary configuration file.

          For example, the following commands will create a website in a custom ApplicationHost.config file:
          appcmd.exe set config -section:system.applicationHost/sites /+"[name='www.fabrikam.com',id='2112']
          " /commit:apphost 
          /AppHostConfig:C:\Temp\IISExpress\config\ApplicationHost.config
          
          appcmd.exe set config -section:system.applicationHost/sites /+"[name='www.fabrikam.com',id='2112']
          .bindings.[protocol='http',bindingInformation=':8080:localhost']" /commit:apphost 
          /AppHostConfig:C:\Temp\IISExpress\config\ApplicationHost.config
          
          appcmd.exe set config -section:system.applicationHost/sites /+"[name='www.fabrikam.com',id='2112']
          .[path='/']" /commit:apphost 
          /AppHostConfig:C:\Temp\IISExpress\config\ApplicationHost.config
          
          appcmd.exe set config -section:system.applicationHost/sites /+"[name='www.fabrikam.com',id='2112']
          .[path='/'].[path='/',physicalPath='C:\Inetpub\www.fabrikam.com']" /commit:apphost 
          /AppHostConfig:C:\Temp\IISExpress\config\ApplicationHost.config
                

          Once you have added the website with the above commands, you can start it with the following command:
          iisexpress.exe /config:C:\Temp\IISExpress\config\ApplicationHost.config /site:www.fabrikam.com

      Known Issues and Limitations

      Windows Server 2012 and Windows 8 features that do not work on Down-Level Operating Systems

      There are a few features which require architecture that is specific to Windows Server 2012 and Windows 8 Client that will not work down-level when you install IIS 8.0 Express on earlier operating systems:

      • Server Name Indication (SNI)
      • Central Certificate Store
      • WebSocket Functionality

      Changes to the HTTP Substatus Codes

      IIS 8.0 Express now shares the same set of HTTP status and substatus codes; this change was made so that developers would find it easier to troubleshoot problems by using IIS 8.0 Express or the full version of IIS on their web server. The following list contains the HTTP substatus codes that were included with IIS 7.5 Express that have been modified or deprecated:

      • HTTP 404.20 - This was the error that was returned when no default document was defined:
        • IIS 8.0 Express returns an HTTP 403 Access Forbidden error when no default document is defined.
        • IIS 8.0 Express returns an HTTP 404.20 error for Too Many URL Segments.
      • HTTP 404.21 - This error code was returned when PHP was not installed; this has been removed from IIS 8.0 Express.
      • HTTP 404.22 - This error code was returned when ASP.NET was not installed; this has been removed from IIS 8.0 Express.
      • HTTP 404.23 - This error code was returned when ASP.NET web pages were not installed; this has been removed from IIS 8.0 Express.

      Errors when using .NET Framework 3.5 and earlier with IIS 8.0 Express Release Candidate on Windows Server 2012 and Windows 8 Client

      There is a known application compatibility issue when you are using IIS 8.0 Express Release Candidate on Windows Server 2012 and Windows 8 Client if you are using .NET Framework 3.5 and earlier versions. This issue is resolved for the final release of IIS 8.0 Express, but a workaround is to install the standard version of IIS on the system where you are running the IIS 8.0 Express Release Candidate. (Note: IIS does not have to be running; you just need to install a basic installation of IIS to resolve the compatibility issue.)

      More Information

      You can learn more about IIS 8.0 Express and related products using the following links:



      Discuss in IIS Forums