For IIS6 I can use the IIS helpers in Wix to install a web application like this:
<iis:WebAppPool Id='AP_MyApp' Name='My Application Pool' Identity='networkService' /> <iis:WebApplication Id='WA_MyApp' Name='MyApp' WebAppPool='AP_MyApp'> <iis:WebApplicationExtension CheckPath='no' Executable='[NETFRAMEWORK20INSTALLROOTDIR]aspnet_isapi.dll' Verbs='GET,HEAD,POST'/> </iis:WebApplication>
Unfortunately, this doesn’t work for IIS7. We don’t want to use the aspnet_isapi.dll mechanism, and instead want the integrated pipeline to handle the request routing. The app pool created by this script is in Classic mode not Integrated mode so none of the handlers get run correctly.
How can I correctly install an MVC app on IIS 7?
The IIS extensions for WIX don’t support IIS7. The IIS team keep rewriting the metabase between versions. There are quite a few things that don’t work, the lack of an integrated app pool amongst them.
Until the extensions get rewritten, you’re left with three options:
I’ve opted for the xmlconfig option at the moment as you can do this within a component and tie it to a feature.