簡體   English   中英

WCF HTTP服務被Windows 10防火牆阻止

[英]WCF http services blocked by windows 10 firewall

我有3個使用基本http綁定通過http端口80相互通信的自托管WCF Windows服務。 在同一台計算機上,我有一個網站(也運行在默認端口80上),該網站托管在IIS中,該網站也管理這些服務之一並與之通信。 在此Windows 10托管計算機中,一切工作正常,即網站可以與服務對話,並且服務可以彼此對話。

當我嘗試從網絡上的另一台PC訪問該網站時,在瀏覽器中收到一條消息,提示“找不到服務器DNS地址”。 我什至無法訪問WCF服務元數據URL。

這看起來像是主機上的防火牆問題,因此我為TCP端口80添加了入站和出站規則,並確保規則“萬維網服務(HTTP Traffic-In)”和“萬維網服務(HTTPS Traffic-In)”啟用。 這些更改均無效,因此我刪除了添加的TCP規則。

最終,我完全禁用了防火牆,並且能夠從另一台PC訪問該網站。 但是,當我重新啟用防火牆后,該網站繼續工作,並且突然我的WCF元數據也可以訪問! 我不明白為什么會這樣。 我已經成功地重新創建了該問題幾次。

誰能提供解釋或建議任何其他防火牆規則來嘗試?

我的最終目標是將服務和網站打包到一個安裝程序中,這樣我就不希望我的最終用戶不得不搞亂防火牆。 他們甚至可能無法重新打開它。

非常感謝

http的80端口上的出站規則如何?

終於想通了。 我用來訪問托管計算機的URL使用了計算機名稱。 為了使計算機響應名稱查找,請為公用配置文件啟用名為“網絡發現(NB-Name-In)”的防火牆規則。 該規則允許UDP端口137上的通信。一旦名稱查找已被緩存,URL將被正確路由。 這解釋了為什么在禁用然后再次啟用防火牆后它可以工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM