在IIS 7.5下的经典ASP应用程序中获取模拟工作

为了让在IIS 7.5下运行的传统ASP应用程序的模拟工作需要进行哪些设置? 我已经在我的testing服务器(Windows Server 2008 R2)上完美地工作了,但是我有一个用户试图让他在R2服务器上工作,我找不出他们有什么错误的设置。

以下是在我的testing服务器上设置应用程序的基本知识:

  • 基本authentication是唯一启用的authentication方法
  • IIS应用程序在经典模式下运行的32位应用程序池下运行
  • 应用程序池作为NetworkService运行并且“载入用户configuration文件”设置为False

在我的testing服务器上运行应用程序时,用户在“基本authentication”窗口中input其凭据,然后应用程序将调用服务器端对象。 我可以从进程监视器看到该对象正在NetworkService下运行,但它正在模拟用户的身份。 但是,在我们正在处理的其他服务器上,该对象不会模拟用户。 它将在应用程序池configuration为在其下运行的任何帐户下运行。

假定服务器如上所述被设置,什么会阻止模拟工作? 我假设web.config设置不会有任何关系,因为它是一个传统的ASP应用程序,而不是一个ASP.NET应用程序。 但只是踢了我试图“打破”我的testing服务器,并将<identity impersonate="false"/>到configuration文件。 据我怀疑,这没有任何效果,冒充还行。

我应该检查哪些设置? 他们提到他们已经“locking”了这个服务器,所以我确定一些设置必须阻止这个工作。

我终于find了答案! 具有模拟问题的服务器在ASP设置中将“Execute In MTA”属性设置为True。 当我们将其切换回False(这是ExecuteInMta的默认值)时,模拟又开始工作。

要find此设置,请单击默认网站,然后双击ASP。 然后展开服务组下的“Com Plus属性”部分。 我希望这有助于其他人遇到这个问题。