SubText和IIS 7的集成管道模式

时间:2021-06-16 04:05:37

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.

开箱即用,SubText无法在IIS7的集成管道模式下运行。不幸的是,它超越了“迁移”web.config以匹配所需的格式。例如,将httpModules和httpHandler移动到其中的新位置。事实证明,在集成模式下运行时,Application_Start上的Request不可用,这也会导致SubText失败。

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.

如果我们没有将博客功能添加到现有的GoDaddy托管的ASP.NET网站,我们将有两个选项:更新SubText代码库以不使用请求上下文(加上修复其他任何表面)或只是运行SubText在经典模式。

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.

不幸的是,我们当前的GoDaddy帐户受到限制,因为我们只能使用一个应用程序池。由于主站点配置为集成管道模式,因此我们无法在不影响(读取:中断)主站点的情况下更改IIS模式。

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.

如果没有切换到更灵活的主机,目前的计划是修改主站点以在经典模式下运行。这是一个简单的站点,并将web.config恢复为经典模式格式应该不是什么大问题。或者,我正在考虑更新SubText代码库以不在Application_Start中使用请求上下文。我还没有听说有人在集成模式下运行SubText,这可能是一个很好的问题需要解决 - 假设必要的更新已经结束。

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

假设这项工作分配了大约8个小时,那么最好的方法是什么?我错过了其他选择吗?

2 个解决方案

#1


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.

不幸的是,在部署Subtext 2.1.2时,我没有安装IIS 7。在即将发布的Subtext 2.5中,我们使用IIS 7集成模式。不幸的是,2.5还没有出来。

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

#2


As a follow up, we quickly commented out the Application_Start code which referenced the Request context. This experiment resulted in further exceptions. We're now moving forward with modifications to the main site to run in classic mode.

作为后续工作,我们快速注释掉了引用Request上下文的Application_Start代码。该实验导致了进一步的例外。我们现在正在对主站点进行修改,以便在经典模式下运行。

#1


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.

不幸的是,在部署Subtext 2.1.2时,我没有安装IIS 7。在即将发布的Subtext 2.5中,我们使用IIS 7集成模式。不幸的是,2.5还没有出来。

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

#2


As a follow up, we quickly commented out the Application_Start code which referenced the Request context. This experiment resulted in further exceptions. We're now moving forward with modifications to the main site to run in classic mode.

作为后续工作,我们快速注释掉了引用Request上下文的Application_Start代码。该实验导致了进一步的例外。我们现在正在对主站点进行修改,以便在经典模式下运行。