2010-05-20 41 views
0

我試圖讓WCF使用SSL與任何五天的時間。我經歷了無數的演練,生成了比郵購文憑公司更多的證書,甚至嘗試了修補程序。自從VB1開始使用MS開發工具之後,我現在正在考慮翻轉漢堡作爲職業選擇。據我所知,WCF是一個完整的檸檬。帶SSL的WCF-未找到本地主機

反正要到我實際的問題:如果我通過這次演練中運行:

http://msdn.microsoft.com/en-us/library/ff648840.aspx

我得到第11步(添加服務引用),並獲得「時出錯下載的元數據請確認您已輸入有效地址「。

錯誤的詳細信息:下載'https://localhost/SSL6/Service.svc'時發生錯誤。 無法連接到遠程服務器 無連接可以作出,因爲目標機器127.0.0.1:443

我使用VS2008在Windows 7 IIS7積極地拒絕它。我完全遵循了演練(除了步驟5在IIS7上有所不同,我進入VD的「SSL設置」),因此它顯示我的配置(是的,我使用了httpsGetEnabled和mexHttpsBinding)。

任何關心保存我的理智和工作?


編輯:如果我進入IIS,請在內容視圖中的VD,在SVC右鍵單擊文件和瀏覽,我得到「Internet Explorer無法顯示該網頁」。 Chrome提供「Google Chrome無法連接到本地主機」。

IE故障排除提供了「遠程設備或資源不會接受連接」。

如果我使用IP地址瀏覽而不是通過http使用本地主機,它表示它使用https確定保護。如果我使用IP和https瀏覽,則得到HTTP錯誤503.該服務不可用。

所以它在我看來就像一個DNS問題與......相結合。 當我嘗試運行服務站點項目時,出現「無法在Web服務器上啓動調試。無法連接到Web服務器。驗證Web服務器正在運行,並且傳入的HTTP請求未被防火牆阻止」。我檢查過防火牆,沒關係。

回答

2

最後破解它。至少有三個問題在起作用。

1)與localhost有某種DNS的問題。它在我的機器上仍然沒有解決,但我可以使用IP addy解決它。

2)另一個問題可能很明顯,WCF不能與IIS 7 OOTB一起使用。所以,你需要運行命令提示符管理員,並運行以下命令 -

「%WINDIR%\ Microsoft.NET \框架\ 3.0 \ Windows通信基礎\ ServiceModelReg.exe」 -r -y

3)當我通過證書的東西后,我仍然得到HTTP錯誤503,「服務不可用」。這結束了從我以前的嘗試是剩飯,還是聽端口:

http://blogs.msdn.com/webtopics/archive/2010/02/17/a-not-so-common-root-cause-for-503-service-unavailable.aspx

因此,要獲得一個Hello World級別的服務與WCF發生和SSL我花了整整一個星期,並在我的旅行我發現了許多朝聖者誰花了大約相同的時間。微軟:你失敗了。

1

您使用的是IIS還是自託管?如果您使用的是IIS,聽起來好像它的配置不正確,因爲它似乎不接受端口443上的連接;我想你可能錯過了一個協議綁定(https到端口443)。關於在IIS7 here上設置SSL的詳細討論可能很有用。

當然,您可以使用瀏覽器輕鬆進行驗證,您應該可以使用SSL連接到該站點。

+0

IIS。我已經完成了您發佈的鏈接中的步驟:( – SteveCav 2010-05-20 22:41:55

+0

)如果您無法使用127.0.0.1進行連接,這不是DNS問題。我確定您的IIS設置不正確,並且沒有收聽端口443(或者,你有一些奇怪的防火牆阻止請求到本地主機) – tomasr 2010-05-21 01:00:49

+0

順便說一句,簡單的方法來驗證IIS是否偵聽端口443:a)使用netstat -an並在該端口上尋找東西,或該死的,只需使用telnet.exe並嘗試連接。 – tomasr 2010-05-21 01:01:41

0

當我發生此錯誤時,我發現從Visual Studio運行服務以獲取其他信息非常有用。右鍵單擊該服務,然後從彈出菜單中選擇Debug - > Start New Instance。 VS將使用WcfTestClient.exe啓動服務。

WcfTestClient將顯示服務項目中的所有服務和端點。健康的啓動會在左側的面板中列出您的服務,並在右側的面板中提供「啓動頁面」選項卡。然而,您的情況會發生什麼,您將在頂部的面板上以及底部的「附加信息」框中獲得服務列表。您的問題服務將具有錯誤狀態。

單擊上方面板中的問題服務,附加信息框將填充錯誤消息和堆棧跟蹤。該消息將告訴你mex(元數據交換)地址是什麼問題。這可能足以提示你解決問題。如果沒有,請在這裏發佈附加信息,我很樂意看看它。

+0

演練讓你使用服務網站項目,所以你不能右鍵單擊並調試它。我將添加一個服務應用程序proj,將我的代碼複製並嘗試。 – SteveCav 2010-05-20 22:43:32

相關問題