2011-08-31 14 views
13

我們的應用程序託管在IIS 7.0中。它通過net.tcp協議公開端點。但是,我們一直運行到以下異常:net.tcp服務不可用於地址協議

EndpointNotFoundException:不能調度的消息,因爲 在端點地址 服務「的net.tcp://localhost/xxx/service.svc」是不可用協議 的地址。

我們已經檢查了以下地方的可能原因。

  • Windows進程激活服務運行正常
  • 的net.tcp偵聽器適配器服務是OK。
  • Net.Tcp端口共享服務正常。
  • 我們爲web應用程序做了net.tcp綁定。
  • net.tcp協議爲Web應用程序啓用如下。 net.tcp protocol is enabled

我試圖在檢查所有上述地方後重置IIS。還是行不通。

這是殺了我。希望有人能給我一些提示。

我已經搜索了很多。似乎這是一個非常普遍的問題,尚未完全解決。我認爲是時候結束這種痛苦了。

非常感謝!

回答

4

這很難說,但你試圖連接什麼端口?

確保端口可用並且沒有其他人正在使用它。

如果您使用的是代理,你應該添加以下爲好:

...... 
<httpTransport 
     maxBufferPoolSize="4194304" 
     maxBufferSize="1048576" 
     maxReceivedMessageSize="1048576" 
     proxyAddress="http://127.0.0.1.:8888 
     useDefaultWebProxy="false" 
    /> 
    </binding> 
</customBinding> 
+0

基於異常消息,看來的net.tcp協議不能正常工作。但是,謝謝,我將檢查防火牆中的端口號。 – smwikipedia

+2

我重新閱讀你的答案。是的,還有另一個網站的綁定使用了相同的net.tcp端口。但奇怪的是,該網站**停止**,也app_pool **停止**。這與HTTP體驗截然不同,只要只有一個在線,我可以在多個網站中共享80端口。刪除其他net.tcp綁定後,或將其更改爲其他端口。然後**重置IIS **。困擾的服務是好的。並注意IIS必須重置。 – smwikipedia

+0

我很好奇爲什麼HTTP和net.tcp協議行爲如此不同。是否因爲HTTP協議由IIS控制,而net.tcp不是(我不確定誰控制它,可能是Windows進程激活服務)。這兩種協議的控制方式不同。 – smwikipedia