ASP.NET Development Server (“Cassini”) Internet Information Services (IIS) Hosted Web Core (HWC) on IIS 7.0 and later Pros • Simple, lightweight • Does not require administrator privileges Cons • Does not support all server features • Inconsistencies with the target platform Pros • Powerful, complete set of features for production Web hosting • Consistent with server deployment targets Cons • Requires Administrator privileges for debugging, configuration and setup • Versions and features varies depending in the Operating system version Pros • Custom-built server Cons • Required parts of IIS • Required custom code The features of IIS 7.5 with the simplicity of Cassini • Matches closely set of IIS 7.5 features • Does not require administrator privileges for common operations, like site creation, running, debugging, etc. Lightweight, simple and redistributable • Small download size (< 6MB) • Installs in seconds Available on client operating systems • Works on Home editions • Installs side-by-side with full IIS Allows you to develop ready to deploy sites • Develop and Test using the full set of features • Create and test configuration before deployment Supports the following Windows editions Supported by the following developer suites • Windows 7 • Windows Server 2008 R2 • Windows Server 2008 • Windows Vista SP1 or later • Windows Server 2003 SP2 • Windows XP SP3 • Visual Studio 2010 SP1 or later * • WebMatrix Too Small Just Right Too Big But it’s not a replacement for IIS! Remote Browsing SSL Support Host names Multiple Sites and Applications Virtual Directories URL Rewrite Static and Dynamic Compression Customizable Mime Types Custom Headers and Errors Request Filtering W3C Logging Failed Request Tracing Directory Browsing Default Document Collection URL Authorization Modular Design Support for Classic and Integrated Pipeline Support for frameworks like ASP.NET, WCF, Classic ASP and PHP Authentication: Basic, Windows, Client Certificates, etc. IP Restrictions, ISAPI, and more… X64 Support • Installs both 64bit and 32-bit versions Shares features and binaries with IIS 8.0 • Application Initialization • WebSocket support (only available on Windows 8) * • Consolidated HTTP status & substatus codes Changing the User Home Directory Support for editing multiple config files • CustomUserHome registry property • "/userhome" parameter • AppCmd’s "/AppHostConfig" parameter Supports the following Windows editions • Windows 8 • Windows Server 2012 • Windows 7 • Windows Server 2008 R2 • Windows Vista SP1 or later • Windows Server 2008 Supported by the following developer suites • Visual Studio 2010 SP1 or later * • WebMatrix Worker Process (W3WP.EXE) Worker Process (W3WP.EXE) Service Host (SVCHost.EXE) Read Configuration Authenticate Machine-global apphost.config Windows Process Activation Service (WAS) Authorize Map Request Handle Request World Wide Web Service (W3SVC) Send Response Log Request HTTP.SYS Kernel-Mode Listener IISEXPRESS.EXE Read Configuration Authenticate Per-User apphost.config Authorize Map Request Handle Request Send Response Log Request HTTP.SYS Kernel-Mode Listener No Process Recycling • IIS Express is a user-mode application, not a service Module/Handler Differences • IIS Express ships with URL Rewrite built-in • WebDAV handler is disabled in configuration Extra Environment Variables in Config • %IIS_BIN%, %IIS_USER_HOME%, and %IIS_SITES_HOME% Failed Request Tracing is Enabled • Easier tracing experience Sites are persistent, similar to IIS Template located at: %ProgramFiles%\IIS Express\config\templates\PersonalWebServer\applicationHost.config Syntax: iisexpress.exe [/config:config-file] [/site:site-name] [/systray:true|false] [/siteid:site-id] [/userhome:user-home] Temporary configuration file generated when IIS Express starts Template located at: %ProgramFiles%\IIS Express\AppServer\applicationHost.config Syntax: iisexpress.exe /path:app-path [/port:port-number] [/clr:clr-version] [/systray:true|false] 1 of 2 2 of 2 http://www.hanselman.com/blog/WorkingWithSSLAtDevelopmentTimeIs EasierWithIISExpress.aspx Application Initialization Centralized SSL Certificate Support FTP Logon Attempt Restrictions Configuration Optimization Multicore Scaling on NUMA Hardware CPU Throttling Server Name Indication (SNI) Dynamic IP Address Restrictions SSL Scalability via the new Web Hosting Certificate Store http://learn.iis.net http://blogs.iis.net http://forums.iis.net http://www.iis.net/download http://europe.msteched.com www.microsoft.com/learning http://microsoft.com/technet http://microsoft.com/msdn http://europe.msteched.com/sessions