無法在Web服務器上啓動調試。與Web服務器通信時出現身份驗證錯誤

使用Visual Studio 2005(Visual Studio 2008亦存在此問題)調試設置了主機頭的網站時出現如下錯誤信息:

---------------------------
Microsoft Visual Studio
---------------------------
無法在 Web 服務器上啓動調試。與 Web 服務器通信時出現身份驗證錯誤。請參閱“幫助”以協助解決問題。
---------------------------

項目屬性的Web中設置“項目URL”爲 http://www.self.cn/

如果將“項目URL”指定爲 localhost 則在設置時不會出現以上的錯誤,所以排除了網上絕大部分文章提供的“集成Windows身份驗證”,項目屬性中“啓用調試”的解決方案。

真正的解決方法如下:

方法 1: 禁用環回檢查 
請遵循以下步驟:
1. 打開註冊表編輯器(單擊 開始 , 單擊 運行 , 類型 regedit然後單擊 確定 )。 
2. 中註冊表編輯器, 找到並單擊以下註冊表項: 
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Lsa 
3. 右擊 Lsa , 指向 新建 , 然後單擊 DWORD 值 。 
4. 類型 DisableLoopbackCheck然後按 Enter。 
5. 右擊 DisableLoopbackCheck , 然後單擊 修改 。 
6. 在 數值數據 框中, 鍵入 1然後單擊 確定 。 
7. 退出註冊表編輯器, 並重新啓動計算機。 (可以不重啓計算機)


方法 2: 指定主機名 
要指定主機名, 映射到環回地址並可連接到 Web 站點上, 請按照下列步驟:
1. 打開註冊表編輯器(單擊 開始 , 單擊 運行 , 類型 regedit然後單擊 確定 )。  。 
2. 中註冊表編輯器, 找到並單擊以下註冊表項: 
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Lsa/MSV1_0 
3. 右擊 MSV1_0 , 指向 新建 , 然後再單擊 多字符串值 。 
4. 類型 BackConnectionHostNames然後按 Enter。 
5. 右擊 BackConnectionHostNames , 然後單擊 修改 。 
6. 在 數值數據 框中, 鍵入主機名或主機名爲站點所在的本地計算機名稱,  確定 。 
7. 退出註冊表編輯器, 並重新啓動 IISAdmin 服務。

這 個錯誤的信息只會出現在特定環境的計算機中:This issue only appears on Web Sites configured with a host header on machines with IIS 6 or IIS 5.1 and the RTM version of the .Net Framework 3.5 SP1.

發佈了83 篇原創文章 · 獲贊 3 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章