服务器应用程序升级到.NET 4.0和MVC 3后不可用。AppPool回收修复它

自从我们在IIS服务器上安装了.NET 4.0和ASP.NET MVC 3以来,我们部署了我们的网站,我们得到了“服务器应用程序不可用”。

事件日志中没有关于该问题的日志。

我们认为这与.NET 4.0或MVC 3.0的安装有关,正如我们在部署的每个阶段所看到的那样。 我们首先升级了我们的DEVelopment环境,然后是ACCeptation,现在我们在我们的PRoDuction环境中看到了相同的行为。

回收特定Web应用程序的应用程序池可解决问题。

我们以前没有这个,并且想知道MVC3.0或者.NET4.0的安装是否可以改变。 我们所有的networking服务器都运行在IIS6上。

更新12-08-2011
我们注意到了一些其他的东西:当我们有一个应用程序池运行三个.NET 4应用程序。 而且我们改变了其中一个应用程序的web.config中的一个值,这会导致它回收,只有这个应用程序不再有效,另外两个仍然正常运行。 这意味着当Web应用程序中的文件发生更改时,不会发生自动回收。

麻烦的应用程序池中是否有多个应用程序? 如果是这样,请尝试分离到不同的池中,因为这可能导致问题 – 特别是如果两个应用程序使用不同版本的.Net。

我们已经发现了这个问题,这是一个外人不可能知道的东西。

因为我们想要在两个应用程序之间共享一个会话,所以我们在Web应用程序中添加了一个“SharedSessionModule”。 这基本上是从ASPState数据库获取正确的会话之前更改应用程序的名称。 我从这里得到这个模块: http : //www.codeproject.com/KB/session/sharedsession.aspx?display=Print

这工作,但混乱的内部IIS导致它在回收appPool时崩溃。