共用方式為


疑難排解 ASP.NET 程式開發伺服器

更新:2007 年 11 月

當您在 Visual Studio 中測試檔案系統網站時,ASP.NET 程式開發伺服器會自動執行。如需詳細資訊,請參閱 Visual Web Developer 中的 Web 伺服器

在某些情況下,使用 ASP.NET 程式開發伺服器可能會產生錯誤。這個主題中列出 Web 伺服器可能產生錯誤的情況,並提供可能的補救方法。

「無法開始監視…的變更」錯誤

如果您使用包含應用程式層級模擬的 ASP.NET 程式開發伺服器,並在啟用了使用者帳戶控制 (英文) 的 Windows Vista 上執行時,就可能會發生這個錯誤。

根據預設,Windows 會以有限權限的使用者帳戶來執行應用程式,即使您是以系統管理員身分登入電腦也一樣。在使用應用程式層級模擬的 Windows Vista 上執行 Web 應用程式時,必須以系統管理員身分來執行 Visual Studio。

無法建立 Windows 使用者語彙基元錯誤

如果在 Web.config 檔案中將網站設定為做為應用程式模擬使用 (使用固定的帳戶模擬),而且如果執行 Web 伺服器的帳戶沒有「做為作業系統的一部分」權限 (也稱為「信賴運算基礎」(Trusted Computing Base,TCB) 權限),便會發生這個錯誤。您可以使用類似下列的語法,在 Web.config 檔案中將網站設定為模擬特定的帳戶。

<identity impersonate="true" userName="<UserName>" password="<securepassword>" />
安全性注意事項:

儲存敏感性資訊 (如組態檔中的使用者名稱和密碼) 時,您應該使用受保護的組態加密敏感值。如需詳細資訊,請參閱 HOW TO:使用資料來源控制項時保護連接字串

啟動 ASP.NET 程式開發伺服器的處理序必須具有 TCB 權限。因此,如果網站設定為執行模擬,您必須將 TCB 權限授與正在執行 Web 伺服器的帳戶。

安全性注意事項:

TCB 權限的功能非常強大,通常您應該盡量授與 TCB 權限給少數帳戶即可。如果網站正在使用模擬,並且無法在沒有將 TCB 權限授與執行 Web 伺服器的帳戶時使用 ASP.NET 程式開發伺服器,請考慮改為使用網際網路資訊服務 (IIS) 來測試網站,這麼一來您就不需要將權限授與給不必要的帳戶。

無法顯示頁面錯誤 (502 錯誤)

造成 502 錯誤或其他指出無法顯示頁面之錯誤的可能原因是瀏覽器無法解析包含 "localhost" 和通訊埠編號的 URL,例如 https://localhost:8080/ExampleWebSite/Default.aspx。ASP.NET 程式開發伺服器會獨佔使用 localhost,而且根據預設會對每個要求使用隨機選取的通訊埠編號。

您可以對本機要求略過 Proxy 伺服器,就可能可以解決這個錯誤。如需詳細資訊,請參閱 HOW TO:為本機 Web 要求略過 Proxy 伺服器

連接遭拒錯誤

伺服器會報告下列錯誤。

10061 - Connection Refused
Internet Security and Acceleration Server

如果電腦正在使用 Internet Security and Acceleration Server (ISA Server) 保護的網路上執行,而且如果下列任一個條件成立的話,便會發生此錯誤:

  • 未安裝防火牆用戶端。

  • 錯誤設定 Internet Explorer 中的 Web Proxy 設定。

使用 IIS 時不會發生這個狀況,因為 IIS 會使用通訊埠 80,而 ISA Server 和其他防火牆產品則允許存取通訊埠 80。不過,ASP.NET 程式開發伺服器會隨機選取通訊埠,但像 ISA Server 這類防火牆產品卻會封鎖大部分通訊埠的存取。

您可以使用下列方法避免這個問題:

  • 安裝防火牆用戶端軟體,例如 ISA 用戶端。

  • 修改 Internet Explorer 中的 Web Proxy 連接設定為近端網址不使用 Proxy。

已超出 BIOS 限制錯誤

如果您在檔案位於遠端電腦的檔案系統 Web 應用程式中工作時,可能會發生這個錯誤。當您嘗試使用 ASP.NET 程式開發伺服器執行頁面時,會發生當做執行階段錯誤的錯誤。

當遠端電腦正在執行 Windows 2000 或 Windows XP 時,您非常可能會看到錯誤。如果遠端電腦正在執行 Windows 2000,請依 Microsoft 知識庫文章 810886 的說明,將並行連接的最大數設為較高的數字。如果正在執行 Windows XP,可以關閉遠端電腦上現有的共用資源 (包括終端伺服器工作階段),便可能可以避免這個錯誤 (Windows XP 是以固定的並行網路要求最大數目進行設定)。可以的話,也可以將 Web 應用程式檔案複製到本機電腦,並在那裡測試應用程式。

未服務靜態檔案

在檔案系統網站中,靜態檔案 (例如影像和樣式表) 會受到 ASP.NET 授權規則的支配。例如,停用匿名存取靜態檔案時,檔案系統網站中的靜態檔案將不會服務匿名使用者。但是,當您將網站部署至執行 IIS 的伺服器時,IIS 將不使用授權規則服務靜態檔案。

請參閱

概念

Visual Web Developer 中的網站類型