Windows

需要在 64 位 Windows Server 上以 32 位模式執行 IIS 網站

  • June 10, 2013

我有一個執行 Windows Server 2003 x64、R2、SP2 的 IIS6 伺服器設置。一切都很好,我可以在 IIS 中託管網站,它完全符合我的要求。

問題是,我有一個 ASP.NET WebApp,它需要使用僅 32 位的 Odbc 驅動程序。我已經將 ASP.NET WebApp 設置為僅針對 x86 進行編譯,但它仍然無法正常工作。

我也在伺服器上嘗試過這個命令來啟用 x86 工作程序,但它也不起作用: cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 true這裡

應用程序仍然無法載入 Odbc 驅動程序,如果我在 x86 開發機器上執行完全相同的程式碼,它可以按預期工作,它也可以在我的 x86 IIS7 上執行;我想避免為這個 WebApp 建構另一個生產 Web 伺服器,因此感謝您提供任何幫助。

除了在 win 64 上啟用 32 位應用程序外,還需要啟用 32 位 asp.net IIS 集成。在 Windows\Microsoft.NET\Framework\v2.0.50727(不是 Framework64 目錄)中執行:

aspnet_royal -啟用 -i

除了上面@dmo 的回答之外,我還必須允許 Application Pool 處理 x86 apps

為此,請打開 IIS Manager,然後選擇您希望它處理 x​​86 的Application Pool並打開**Advanced Settings

現在找到屬性啟用 32 位應用程序並設置為 True。

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