Developing EPiServer solutions on Windows Vista / IIS7 may be quite annoying since it is not a supported platform so far. I have had my fair share of annoying errors and after re-installing my computer form scratch, I now find myself struggling with the same issues once again.

This great article describes how to get EPiServer development working in Vista/IIS7:
http://persalmi.net/PermaLink.aspx?guid=3462ea2f-6dce-450e-ab95-44fd3fc3abb2

However, since this article is in Swedish, I will draw the big outlines below (sometimes just translating the article text) and add some additional info.

Step 1. IIS configuration

In the Control Panel, under Programs & Features (Turn Windows Features on/off), make sure that these IIS components are installed:

  • Web Management Tools
    • IIS Management Compatibility
      • IIS WMI Compatibility
      • IIS Management Console
      • IIS Scripting Tools
      • IIS Metabase and IIS 6 configuration compatibility
  • IIS Management Console
  • IIS Management Script and Tools
  • IIS Management Service

Step 2. Port in use problem

After creating your EPiServer solution, you will not be able to run it straight away. I have faced some problems when executing the solution on a fixed or dyunamic port, since Visual Studio alerts that the port is already in use.

I solved this error by changing the solution configuration so that the solution runs on a

Just do the following:

  • Right click the EPiServer project (not the solution) and click Properties
  • Select the Web tab
  • Instead of “Use Visual Studio Development Server”, choose “Use Local IIS Web Server”
  • Give the solution a “good” URL and click Create Virtual Directory
  • You may need to run Visual Studio as a developer to be able to create the virtual directory

Done? Not quite :)

Step 3. User permission

By default, IIS7 will not have the privilegies to perform some required changes that needs to be performed to run the EPiServer site. You must grant the user NETWORK SERVICE permissions to write to the solution folder, otherwise no changes may be automatically applied.

Step 4. Use Classic Pipeline mode

Make sure that your EPiServer solution virtual directory runs on an Application Pool that uses Classic Pipeline Mode.

Step 5. URL Rewriting

IIS7 requires some manual handling to make URL Rewriting work. Read about that separate issue here. If this is not done, URL reqriting to non-aspx files like images, css files etc. will not work.