2008年12月12日

在 Windows Server 2003 64 bit 的 IIS 管理員中,看不到「ASP.NET」索引標籤

最近常常在測試 ASP.NET 網頁程式,突然心血來潮,想把這些網頁程式 POST 到 Windows Server 2003 R2 Standard Edition 64 位元 的 IIS 上。開啟 IIS 管理員,進入網站的設定畫面時,發現好像少了什麼東西。再跟開發環境上的 Windows XP Pro 的 IIS 管理員進行比較,終於發現到了,原來是少了一個「ASP.NET」索引標籤。 開啟「命令提示字元」,使用下面的指令進行檢查:
cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs get W3SVC/AppPools/Enable32bitAppOnWin64
結果如下: 這是說,在 IIS 中,已經將 Enable32bitAppOnWin64 屬性設定為 True。用白話來說,就是在 64 位元電腦上執行的 IIS,目前正處於 32 位元模式。 由於 IIS 6 同時支援 32 位元模式及 64 位元模式,但是,IIS 6 不支援同時在 64 位元版的 Windows 上執行兩種模式,也就是說,我只能選擇是在 64 跟 32 位元模式中,擇一使用。 為了解決這個問題,只好將 Enable32bitAppOnWin64 屬性設定為 False
cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0
再用先前的查詢的指令進行檢查: 接著用「ASP.NET IIS 註冊工具」(Aspnet_regiis.exe)重新註冊一次 ASP.NET 設定,以便更新 ASP.NET 應用程式的指令碼對應,並指向與工具相關聯的 ASP.NET ISAPI 版本。要注意的是,要用 64 位元的註冊工具:
cd %SYSTEMROOT%\Microsoft.NET\Framework64\v2.0.40607 aspnet_regiis.exe -i -register
開啟 IIS 管理員進行檢查,收工:

沒有留言:

張貼留言