Windows-Server-2008-R2

讓模擬在 IIS 7.5 下的經典 ASP 應用程序中工作

  • March 22, 2011

為了讓模擬在 IIS 7.5 下執行的經典 ASP 應用程序工作,需要進行哪些設置?我讓它在我的測試伺服器(Windows Server 2008 R2)上完美執行,但我有一個使用者試圖讓它在他們的 R2 伺服器上執行,我不知道他們有什麼錯誤。

以下是如何在我的測試伺服器上設置應用程序的基礎知識:

  • 基本身份驗證是唯一啟用的身份驗證方法
  • IIS 應用程序在以經典模式執行的 32 位啟用的應用程序池下執行
  • 應用程序池作為 NetworkService 執行,並且載入使用者配置文件設置為 False

當您在我的測試伺服器上執行應用程序時,使用者在基本身份驗證視窗中輸入他們的憑據,然後應用程序將呼叫伺服器端對象。我可以從 Process Monitor 中看到該對像在 NetworkService 下執行,但它正在模擬使用者的身份。但是,在我們正在處理的其他伺服器上,該對像不會模擬使用者。它將在應用程序池配置為執行的任何帳戶下執行。

假設如上所述設置伺服器,什麼會阻止模擬工作?我假設 web.config 設置與此無關,因為它是經典 ASP 應用程序而不是 ASP.NET 應用程序。但只是為了好玩,我嘗試“破壞”我的測試伺服器並將<identity impersonate="false"/>其放入配置文件中。正如我所懷疑的那樣,它沒有任何效果,並且模仿仍然可以正常工作。

我應該讓他們檢查哪些設置?他們提到他們已經“鎖定”了這台伺服器,所以我確信某些設置必須阻止它工作。

我終於找到了答案!出現模擬問題的伺服器在 ASP 設置中將“在 MTA 中執行”屬性設置為 True。當我們將其切換回 False(這是 ExecuteInMta 的預設值)時,模擬再次開始工作。

要找到此設置,請點擊預設網站,然後點兩下 ASP。然後展開“服務”組下的“Com Plus 屬性”部分。如果其他人遇到這個問題,我希望這會有所幫助。

引用自:https://serverfault.com/questions/242778