ASP.NET 4.0 安裝在 IIS6 最常遇到的四個問題

ASP.NET 4.0 在開發與部署方面皆有許多強化的功能,若要協助客戶將新開發的 ASP.NET 4.0 網站部署到現有的 Windows Server 2003 伺服器 (IIS6) 一般來說還是挺順利的,不過客戶端現有的 IIS6 可能已經部署了許多網站,而且部署的環境與設定也不見得單純,因此很有可能遇到一些問題,筆者在部署 ASP.NET 4.0 網站至 IIS6 時也親自遭遇幾次問題,其實有些問題從 ASP.NET 1.1 升級到 ASP.NET 2.0 的時候就遇過了,但想必還會有人在這次升級時遭遇到相同的問題,以下就是將 ASP.NET 4.0 網站部署到 IIS6 最常遇到的四個問題。
 首先,要正確部署 ASP.NET 4.0 網站必須先安裝 Microsoft .NET Framework 4執行環境,但在安裝前必須先確定你的作業系統版本是在支援的範圍內:
  • Windows XP SP3
  • Windows Server 2003 SP2
  • Windows Vista SP1 (含) 以後版本
  • Windows Server 2008 (伺服器核心角色不支援)
  • Windows 7
  • Windows Server 2008 R2 (伺服器核心角色不支援)
  常見問題 1:設定網站站台的 ASP.NET 頁籤時找不到 ASP.NET 4.0 的選項
 注意:如果你只有安裝 .NET Framework Client Profile 是不支援 ASP.NET 的,必須下載 Microsoft .NET Framework 4 (獨立安裝程式) 來安裝才會完整。
 正常來說,只要 Windows Server 2003 已經先安裝好 IIS 再安裝 Microsoft .NET Framework 4 就可以在 IIS 6.0 網站站台ASP.NET頁籤找到 ASP.NET 4.0 的選項:
  常見問題 2:安裝好 .NET 4 後還是找不到設定 網站站台ASP.NET 頁籤的 ASP.NET 4.0 的選項
 這問題通常出在先安裝 Microsoft .NET Framework 4 才安裝 IIS6,這時必須輸入以下指令將 ASP.NET 4.0 註冊進 IIS6 即可:
C:/WINDOWS/Microsoft.NET/Framework/v4.0.30319/aspnet_regiis.exe -ir -enable
  常見問題 3:安裝好 .NET 4 也設定好 網站站台的 ASP.NET 4.0 的選項依然無法執行網站 這裡的「無法執行網站」其實所有執行的頁面都會出現 找不到這個頁面 (HTTP 錯誤 404 - 找不到檔案或目錄)的回應,不管你怎麼設定目錄安全性或任何執行權限都無法執行任何 ASP.NET 程式,而且可能只有靜態頁面可以讀取而已,像是如下圖示這麼一般性的錯誤訊息真的很容易讓 IT 人員不知如何是好:
 如果你因為安裝 ASP.NET MVC 而有設定「萬用字元應用程式對應」的話,則會發現網站所有頁面包括靜態檔案讀去都會回應 找不到這個頁面 的錯誤!
 此問題發生的原因是 IIS6 阻擋了 c:/windows/microsoft.net/framework/v4.0.30319/aspnet_isapi.dll程式的執行,由於所有會被導向到此 ISAPI Handler 的要求全部都會失敗,所以才會導致你所有 HTTP 要求都會得到 HTTP 404 Not Found 的結果。
 解決方式很簡單,只要到 [網頁服務延伸] 的地方將 ASP.NET v4.0.30319 設定 [允許] 即可,如下圖示:
  常見問題 4:ASP.NET 4.0 的網站站台已經設定好也可以正常執行了,但執行一段時間會自己掛掉!
 如果你在同一個 應用程式集區設定了兩個不同版本的 ASP.NET 就會造成這個問題,例如你原本有個 ASP.NET 2.0 的站台,並且設定的應用程式集區為 DefaultAppPool,然而你之後又新增了一個 ASP.NET 4.0 的站台,而預設的應用程式集區也是在 DefaultAppPool的話就會發生衝突了,這時就會看是哪個站台先被執行起來,先跑起來的那個站台才會搶到所有權,後面執行的那個就會發生 Server Application Unavailable伺服器應用程式無法使用的錯誤:
 解決的方法有二:
  • 將共用應用程式集區的 網站站台網站應用程式(虛擬目錄) 都設定到 ASP.NET v4.0.30319
  • 區分兩個不同的應用程式集區
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值