IIS Express vs Default IIS that comes with Windows 7

I am new to the world of IIS and I wanted to know the following...

I have heard about IIS Express. I run Windows 7 Ultimate and have installed the IIS that comes packaged with Windows 7.

As a developer, is there any major benefit for me if I install IIS Express over the default IIS that comes with Windows 7 for .Net Web projects?

72271 次浏览

From Scott Gu's post on IIS Express:

Why Not IIS

The downside with using the IIS option today, though, is that some companies don’t allow full web-servers to be installed on developer machines. IIS also requires administrator account access to setup and debug projects. Different versions of Windows also support different versions of IIS. For example, if you are running on Windows XP you have to use the IIS 5.1 web-server that comes with it – which doesn’t support all the new features of IIS 7.x. Configuring a web project within VS to use IIS also requires some extra installation and configuration steps.

Why IIS Express

It’s lightweight and easy to install (less than 10Mb download and a super quick install) It does not require an administrator account to run/debug applications from Visual Studio It enables a full web-server feature set – including SSL, URL Rewrite, Media Support, and all other IIS 7.x modules It supports and enables the same extensibility model and web.config file settings that IIS 7.x support It can be installed side-by-side with the full IIS web server as well as the ASP.NET Development Server (they do not conflict at all) It works on Windows XP and higher operating systems – giving you a full IIS 7.x developer feature-set on all OS platforms IIS Express (like the ASP.NET Development Server) can be quickly launched to run a site from a directory on disk. It does not require any registration/configuration steps. This makes it really easy to launch and run for development scenarios.

Here are the differences from http://www.mywindowsclub.com/resources/3302-Key-differences-between-IIS-IIS-Developer.aspx.

If you already have IIS installed - its a better product. IIS express would only be used by people who don't have access to IIS or want something that is lighter than IIS but more like IIS than Cassini.

  • Integrated with OS
    • IIS 7 ships with the operating system and is tightly integrated to Windows.
    • IIS developer express is a separate downloadable tool
  • Targetted users
    • IIS 7 is for both developers as well as for production purposes.
    • IIS developer express can be used only for development purposes and not for production.
  • Supported Windows editions
    • IIS 7 will work only on Windows Vista and newer editions of Windows. In case of server OS, IIS 7 will work only on Windows 2008.
    • IIS developer edition will work even on older version - starting from Windows XP and newer.
  • Process model and activation
    • In IIS 7, the worker thread is automatically launched and managed by Windows Process Activation Service.
    • In case of IIS Express, user has to handle this.
  • FTP support
    • IIS developer express does not support FTP while IIS 7 supports it.
  • WCF support
    • IIS Developer express supports only WCF over HTTP.
    • IIS 7 supports WCF including over TCP, Named Pipes, and MSMQ.
  • Multi developer support
    • IIS 7 is a single user application.
    • IIS Developer express supports multi developer environment. Configuration files, settings, and Web content are maintained on a per-user basis.
  • Visual Studio integration
    • All editions and versions of Visual Studio have built-in support for IIS 7.
    • Only VS 2010 and future versions will have built-in support for IIS developer express.
  • Runtime extensions
    • IIS developer has support for URL Rewrite and FastCGI.
    • Webmatrix offers support for SEO, database management and Web Deployment. Other extensions that are offered with IIS are not yet tested with IIS Developer express.
  • Management Tools
    • IIS 7 is managed using the IIS Manager.
    • IIS Developer express can be managed using Webmatrix. Also, the express edition has support through system tray.
  • Port used by IIS
    • The default website comes with IIS 7 listens to port 80.
    • The default website part of IIS developer express listens to port 8080 to avoid conflicts with IIS 7 when they are running side by side.

After a couple of hours i found one significant reason to use Express over Local IIS : "Edit and Continue" does not work on local IIS.