iis-7integrated-pipeline-modesubtext

SubText and IIS 7's Integrated Pipeline Mode


Out of the box, SubText is unable to run under IIS7's Integrated Pipeline Mode. Unfortunately, it goes beyond "migrating" the web.config to match the required format. For example, moving httpModules and httpHandlers to their new location within . As it turns out, Request is not available at Application_Start when running in Integrated mode and this causes SubText to fail too.

If we weren't adding blog functionality to an existing, GoDaddy-hosted ASP.NET web site, we would be left with two options: Update the SubText codebase to not use the request context (plus fix whatever else surfaces) OR simply run SubText in classic mode.

Unfortunately, our current GoDaddy account is limiting as only a single app pool is available to us. Since the main site is configured for Integrated Pipeline Mode, we don't have the freedom to change the IIS mode without impacting (read: breaking) the main site.

Short of switching to a more flexible host, the current plan is to modify the main site to run in classic mode. It's a simple site and reverting the web.config to the classic mode format should not be a big deal. Alternatively, I'm toying with the idea of updating the SubText codebase to not use the request context at Application_Start. I haven't heard on anyone running SubText in Integrated Mode and it might be a nice problem to solve -- assuming there's an end to the necessary updates.

Assuming there are about 8 more hours allocated to this effort, what's the best approach? Am I missing any other options?


Solution

  • Unfortunately I didn't have an IIS 7 installation to test with when deploying Subtext 2.1.2. In the upcoming Subtext 2.5, we work great with IIS 7 integrated mode. Unfortunately, 2.5 is not yet out.

    If you're ok with the bleeding edge, you could try the latest build from our trunk. It's pretty solid and we're almost done. If you're upgrading an existing blog, it may be challenging. If you're installing a new one, this might be a good build to try.

    http://build.subtextproject.com/builds/archive/SubText-2.5.0.228.zip