C#中ASP.NET Web應(yīng)用程序編譯時(shí)的錯(cuò)誤:無法在web服務(wù)器上啟動(dòng)調(diào)試。調(diào)試失敗,因?yàn)闆]有啟用集成windows身份驗(yàn)證。
解決:打開IIS,在IIS里查看站點(diǎn)信息(屬性),選擇“目錄安全性”,點(diǎn)擊“匿名訪問和身份驗(yàn)證控制”右邊的“編輯..”,選中“集成Windows身份驗(yàn)證”選項(xiàng)即可
//---------------------------------------------------------------------------------------------------------------------------------------------
調(diào)試asp.net應(yīng)用程序的時(shí)候,VS.NET出現(xiàn)這樣一個(gè)錯(cuò)誤:試圖運(yùn)行項(xiàng)目時(shí)出錯(cuò):無法在WEB服務(wù)器上啟動(dòng)調(diào)試。
按照查找到的資料,試了如下方法:
1:Web.config 文件的"編譯"部分中 debug 屬性設(shè)置為了 true;
2:重新啟動(dòng) IIS,請?jiān)诿钐崾痉庢I入 iisreset
3:檢查了“默認(rèn) Web 站點(diǎn)”的 IIS 安全設(shè)置,設(shè)置沒有錯(cuò)
4:為 Web 應(yīng)用程序指定虛擬文件夾,已指定了
5:修改了machine.config 文件,將userName ="machine" 改為userNaem ="system",重起計(jì)算機(jī),
6:加入Debugger Users組的用戶,
7:修改了IE中的安全設(shè)置,“自動(dòng)使用當(dāng)前用戶名和密碼登錄”
8:asp.net沒有注冊iis 可以試下:c:\winnt\microsoft.net\framework\v1.1.4322\aspnet_regiis -i
在machine.config里把username從machine改為system
9:.打開IIS, .右擊“默認(rèn)站點(diǎn)”, 選擇“屬性”, 選擇“目錄安全性”標(biāo)簽, 編輯“身份驗(yàn)證和訪問控制”, 選擇“集成WINDOWS身份驗(yàn)證”
========無敵分割線==============
錯(cuò)誤:無法在 Web 服務(wù)器上啟動(dòng)調(diào)試請參見 調(diào)試腳本和 Web:錯(cuò)誤和疑難解答 當(dāng)試圖對運(yùn)行在 Web 服務(wù)器上的應(yīng)用程序進(jìn)行調(diào)試時(shí),有時(shí)可能會(huì)得到具有以下錯(cuò)誤信息的消息: Unable to start debugging on the Web server 如果遇到這些錯(cuò)誤,則需要考慮以下幾個(gè)問題: 要檢查的內(nèi)容 遠(yuǎn)程服務(wù)器上的 Web 應(yīng)用程序 存儲(chǔ)在 Visual SourceSafe 中并使用 FrontPage 服務(wù)器擴(kuò)展的 Web 應(yīng)用程序 手動(dòng)附加 要檢查的內(nèi)容 如果得到“無法在 Web 服務(wù)器上啟動(dòng)調(diào)試”錯(cuò)誤,請嘗試檢查下列內(nèi)容: 您是否正在運(yùn)行一個(gè)允許 Visual Studio 調(diào)試器自動(dòng)附加到 Web 應(yīng)用程序的 Windows 版本?如果不是,則需要啟動(dòng)應(yīng)用程序而不調(diào)試,然后手動(dòng)附加到它。(有關(guān)更多信息,請參見手動(dòng)附加和 ASP.NET 調(diào)試:系統(tǒng)要求。) 您的 Web 應(yīng)用程序是否具有 Web.config 文件? Web.config 文件是否通過將 debug 屬性設(shè)置為 true 而啟用了調(diào)試模式?有關(guān)更多信息,請參見 ASP.NET 應(yīng)用程序中的調(diào)試模式。 Web.config 文件是否包含任何語法錯(cuò)誤?您可以通過運(yùn)行 Web 應(yīng)用程序而不調(diào)試來檢查是否存在語法錯(cuò)誤。(從“調(diào)試”菜單中,選擇“開始執(zhí)行(不調(diào)試)”。)如果在 Web.config 中存在語法錯(cuò)誤,則會(huì)顯示詳細(xì)信息。 如果 ASP.NET 輔助進(jìn)程在您自己的帳戶下運(yùn)行,則您必須是“Debugger Users”(調(diào)試器用戶)組的成員或管理員。 如果 ASP.NET 輔助進(jìn)程在任何其他用戶的帳戶下運(yùn)行,則您必須是“Administrators”(管理員)組的成員。 您是否是通過指定特定的 IP 地址(如 100.20.300.400)而創(chuàng)建了項(xiàng)目?調(diào)試 Web 服務(wù)器要求 NTLM 身份驗(yàn)證。默認(rèn)情況下,IP 地址被假定為 Internet 的一部分,而在 Internet 上不進(jìn)行 NTLM 身份驗(yàn)證。若要更正這一問題: 創(chuàng)建項(xiàng)目時(shí),指定 Intranet 上計(jì)算機(jī)的名稱。 - 或 - 將 IP 地址 (
http://100.20.300.400) 添加到您的計(jì)算機(jī)上的受信任站點(diǎn)列表中。(從 Internet Explorer 的“工具”菜單中,選擇“Internet 選項(xiàng)”,然后選擇“安全”選項(xiàng)卡)。 運(yùn)行 IIS 服務(wù)器的計(jì)算機(jī)是否安裝了 Visual Studio .NET 遠(yuǎn)程組件? IIS 是否是在安裝了 Visual Studio .NET 之后才被安裝在本地計(jì)算機(jī)(即運(yùn)行 Visual Studio .NET 的計(jì)算機(jī))上的?IIS 應(yīng)在安裝 Visual Studio .NET 之前安裝。如果它是后來安裝的,則可能需要修復(fù) .NET Framework。 修復(fù) .NET Framework 請插入 Visual Studio .NET 光盤并在命令行處輸入下面的一行命令: :\wcu\dotNetFramework\dotnetfx.exe /t:c:\temp /c:"msiexec.exe /fvecms c:\temp\netfx.msi" - 或 - 請插入 Visual Studio .NET Requirements 光盤并在命令行處輸入下面的一行命令: :\dotNetFramework\dotnetfx.exe /t:c:\temp /c:"msiexec.exe /fvecms c:\temp\netfx.msi" 是否正確地指定了項(xiàng)目起始頁的 URL?擴(kuò)展名和項(xiàng)目目錄是否正確? 是否正確地設(shè)置了 IIS 安全設(shè)置?若要驗(yàn)證這一點(diǎn),請檢查“默認(rèn) Web 站點(diǎn)”設(shè)置。 檢查“默認(rèn) Web 站點(diǎn)”的 IIS 安全設(shè)置 從“開始”菜單中,依次選擇“程序”和“管理工具”,然后單擊“Internet 服務(wù)管理器”(Windows 2000) 或“Internet 信息服務(wù)”(Windows XP)。 在“Internet 服務(wù)管理器”或“Internet 信息服務(wù)”對話框中,單擊您的計(jì)算機(jī)的樹控件 (Tree Control)。在“Web 站點(diǎn)”文件夾中,找到“默認(rèn) Web 站點(diǎn)”。 右擊“默認(rèn) Web 站點(diǎn)”并選擇“屬性”。 在“默認(rèn) Web 站點(diǎn)屬性”窗口中,選擇“目錄安全性”選項(xiàng)卡并單擊“編輯”。 在“身份驗(yàn)證方法”對話框中,選擇“匿名訪問”和“集成的 Windows 身份驗(yàn)證”(如果尚未選擇的話)。 單擊“確定”關(guān)閉“Internet 服務(wù)管理器”或“Internet 信息服務(wù)”對話框。 單擊“確定”。 對于 ATL Server 應(yīng)用程序,請驗(yàn)證 DEBUG 謂詞是否與您的 ISAPI 擴(kuò)展相關(guān)聯(lián)。 對于 ASP.NET 應(yīng)用程序,請確保應(yīng)用程序的虛擬文件夾具有在“Internet 服務(wù)管理器”或“Internet 信息服務(wù)”中設(shè)置的“應(yīng)用程序名稱”。 為 Web 應(yīng)用程序指定虛擬文件夾 從“開始”菜單中,依次選擇“程序”和“管理工具”,然后單擊“Internet 服務(wù)管理器”(Windows 2000) 或“Internet 信息服務(wù)”(Windows XP)。 在“Internet 服務(wù)管理器”或“Internet 信息服務(wù)”對話框中,單擊您的計(jì)算機(jī)的樹控件 (Tree Control)。在“Web 站點(diǎn)”文件夾中,找到此 Web 應(yīng)用程序。 右擊 Web 應(yīng)用程序并選擇“屬性”。 在 Web 應(yīng)用程序的“屬性”窗口中,選擇“目錄”選項(xiàng)卡。 在“應(yīng)用程序設(shè)置”下,單擊“創(chuàng)建”。 應(yīng)用程序名稱即出現(xiàn)在此框中。 單擊“確定”關(guān)閉“屬性”對話框。 單擊“確定”關(guān)閉“Internet 服務(wù)管理器”或“Internet 信息服務(wù)”對話框。 遠(yuǎn)程服務(wù)器上的 Web 應(yīng)用程序 如果 Web 應(yīng)用程序位于遠(yuǎn)程服務(wù)器上,請檢查以下問題: 是否運(yùn)行了正確的安裝程序以便在服務(wù)器上安裝 ASP.NET 或 ATL Server 和遠(yuǎn)程調(diào)試器組件? 您是否具有調(diào)試在系統(tǒng)帳戶下運(yùn)行的進(jìn)程所必需的訪問特權(quán)?如果 ASP.NET 輔助進(jìn)程在您自己的帳戶下運(yùn)行,則您必須是“Debugger Users”(調(diào)試器用戶)組的成員或管理員。如果 ASP.NET 輔助進(jìn)程在任何其他用戶的帳戶下運(yùn)行,則您必須是“Administrators”(管理員)組的成員。(有關(guān)具體的操作,請參見添加調(diào)試器用戶和配置 DCOM。) 默認(rèn)情況下,ASP.NET 應(yīng)用程序作為 ASPNET 運(yùn)行。若要調(diào)試在 aspnet_wp.exe 下運(yùn)行的應(yīng)用程序,您需要具有管理員特權(quán)或?yàn)?aspnet_wp.exe 編輯 machine.config 文件,以便 aspnet_wp.exe 在用戶帳戶下運(yùn)行。(在 Windows Server 2003 上,輔助進(jìn)程的名稱是 w3wp.exe 而不是 aspnet_wp.exe,您可以使用 IIS 更改運(yùn)行它的帳戶。)若要調(diào)試在 inetinfo.exe 下運(yùn)行的應(yīng)用程序,您必須是運(yùn)行 inetinfo.exe 的計(jì)算機(jī)上的管理員。 根據(jù)安全設(shè)置的不同,ATL Server 應(yīng)用程序可能在 inetinfo.exe 下運(yùn)行,也可能在 ATL 輔助進(jìn)程 dllhost.exe 下運(yùn)行。若要調(diào)試在 inetinfo.exe 下運(yùn)行的應(yīng)用程序,您必須是運(yùn)行 inetinfo.exe 的計(jì)算機(jī)上的管理員,或者可以使用公共語言運(yùn)行庫應(yīng)用程序設(shè)置將 dllhost 配置為作為特定用戶運(yùn)行。 您是否正在使用“終端服務(wù)器”嘗試調(diào)試遠(yuǎn)程計(jì)算機(jī)上的 Web 應(yīng)用程序?在 Windows XP 下,支持使用“終端服務(wù)器”對本機(jī) Web 應(yīng)用程序進(jìn)行遠(yuǎn)程調(diào)試。而在 Windows 2000 或 Windows NT 下則不支持。 Windows Server 2003 上的 IIS 在 Windows Server 2003 上安裝 Visual Studio .NET 時(shí),默認(rèn)情況下不啟用 ASP.NET。要開發(fā) Web 項(xiàng)目,必須在完成 Visual Studio .NET 安裝程序后運(yùn)行“安全防范向?qū)?#8221;。 如果在完成 Visual Studio .NET 安裝程序之前運(yùn)行“安全防范向?qū)?#8221;,可能不會(huì)啟用正確的 ASP.NET 版本。Visual Studio .NET 安裝程序會(huì)安裝新的 ASP.NET 版本。要想確保啟用最新的 ASP.NET 版本,必須在完成安裝之后再運(yùn)行“安全防范向?qū)?#8221;。 在 Windows Server 2003 上運(yùn)行安裝程序后配置 IIS 從“開始”菜單中,選擇“所有程序”。 選擇“管理工具”,然后選擇“Internet 信息服務(wù)”。 在左窗格中右擊計(jì)算機(jī)的名稱,然后選擇“安全性”。 在“安全防范向?qū)?#8221;的第一屏上,單擊“下一步”。 驗(yàn)證“HTTP”是否設(shè)置為“自動(dòng)”,然后單擊“下一步”。 在“請求處理程序”列表中,檢查 ASP.NET 以及 n:\WINDOWS\Microsoft.NET\Framework\\aspnet_isapi.dll 的每個(gè)實(shí)例。 單擊“下一步”。 單擊“完成”完成向?qū)А?存儲(chǔ)在 Visual SourceSafe 中并使用 FrontPage 服務(wù)器擴(kuò)展的 Web 應(yīng)用程序 如果 Web 應(yīng)用程序存儲(chǔ)在 Visual SourceSafe 中并且使用 FrontPage 服務(wù)器擴(kuò)展作為它的 Web 訪問模式,請檢查以下問題: Visual SourceSafe 是否與 FrontPage 服務(wù)器/Web 服務(wù)器位于同一臺(tái)計(jì)算機(jī)上?如果是,則可以使用“集成身份驗(yàn)證”進(jìn)行調(diào)試。(若要檢查“集成身份驗(yàn)證”設(shè)置,請參見此過程以檢查前面的“默認(rèn) Web 站點(diǎn)”的 IIS 安全設(shè)置。) 手動(dòng)附加 如果按照這些疑難解答步驟執(zhí)行了相應(yīng)操作,而在開始調(diào)試時(shí)仍然收到錯(cuò)誤信息,則可能需要嘗試通過手動(dòng)附加來調(diào)試應(yīng)用程序。 手動(dòng)附加 啟動(dòng)應(yīng)用程序而不調(diào)試。(從“調(diào)試”菜單中,選擇“開始執(zhí)行(不調(diào)試)”。) 附加到適當(dāng)?shù)?IIS 進(jìn)程或輔助進(jìn)程。默認(rèn)情況下,對于 ATL Server 應(yīng)用程序?yàn)?inetinfo.exe,對于 ASP.NET 應(yīng)用程序?yàn)?aspnet_wp.exe(對于 Windows Server 2003 下的 ASP.NET 應(yīng)用程序?yàn)?w3wp_wp.exe)。 使用下面的過程來確定 ASP.NET 或 ATL Server 應(yīng)用程序在哪個(gè)進(jìn)程下運(yùn)行。 檢查 ASP.NET 應(yīng)用程序在哪個(gè)進(jìn)程下運(yùn)行 使用 Visual Studio .NET 或其他文本編輯器打開應(yīng)用程序的 machine.config 文件。 找到下面的進(jìn)程模型屬性: enable 如果 enable 設(shè)置為 TRUE,則應(yīng)用程序在 aspnet_wp.exe 或 w3wp.exe 下運(yùn)行。(這也是默認(rèn)設(shè)置。) 如果 enable 設(shè)置為 FALSE,則應(yīng)用程序在 inetinfo.exe 下運(yùn)行。 檢查 ATL Server 應(yīng)用程序在哪個(gè)進(jìn)程下運(yùn)行 在解決方案資源管理器中,右擊項(xiàng)目名稱,然后從快捷菜單中選擇“屬性”。 在“<項(xiàng)目> 屬性頁”對話框中,打開“Web 部署”文件夾,然后選擇“常規(guī)”。 查看“應(yīng)用程序保護(hù)”設(shè)置。 如果此設(shè)置為“低(IIS 進(jìn)程)”,則應(yīng)用程序在 inetinfo.exe 下運(yùn)行。 如果此設(shè)置為“中等(池)”,則應(yīng)用程序在 dllhost.exe 進(jìn)程下運(yùn)行(與其他放入池中的 ATL Server 應(yīng)用程序相同)。 如果此設(shè)置為“高(獨(dú)立)”,則應(yīng)用程序在 dllhost.exe 進(jìn)程下運(yùn)行(與其他 ATL Server 應(yīng)用程序不同)。 單擊“確定”關(guān)閉“<項(xiàng)目> 屬性頁”對話框。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點(diǎn)擊舉報(bào)。