在多个应用程序池中启动了相同的应

时间:2016-11-17 18:30:13

标签: iis iis-7.5

我刚刚在IIS中找到了一些我无法理解的东西,并且我希望其他人可以这么做:)?

我在IIS中有一个站点,有多个应用程序。所有这些都配置了serviceAutostartProvider,它们的设置如下:

-Production (site, points to c:\prod)
   * App1 (uses appPool 1, points to c:\prod\app1)
   * App2 (uses appPool 2, points to c:\prod\app2)
   * App3 (uses appPool 3, points to c:\prod\app3)

应用程序映射到磁盘上的不同路径(如上所述),并且应用程序在/ bin文件夹中具有不同的程序集。他们之间没有任何共同点,除了一些"普通" .net程序集,如autostartprovider。

一旦我部署了App3,我就可以看到它是自动启动的(因为它配置了autostartprovider),但它启动了TWICE!?

一旦进入appPool3(如预期的那样),一次进入appPool1。

我可以在我的日志中看到这个,因为autostartprovider从web.config读取appSetting(应用程序名称)并使用w3wp processid记录它。换句话说,日志显示:

"Booted App3, processid: {appPool3's id}"
"Booted App3, processid: {appPool1's id}"

这怎么可能发生?我错过了一些明显的东西吗我已经验证了App3文件/程序集没有错误地进入App1的路径..

1 个答案:

答案 0 :(得分:0)

这似乎是IIS中已确认的错误,请参阅以下KB:

Some services are preloaded unexpectedly on an IIS server in Windows KB2672277