最近因为项目需要搞了个WCF服务,现在的问题是我把服务建在本机或其他内网机器上都能正常连接,但在服务器上布署却无法访问.我之前也没有搞过这个,也不能确定到底是我自己连错了还是服务器阻止了.我已经让他给我开了这个50457端口,不过现在还是联不上.我们的服务器是其他部门在管理,如果不能确定问题所在也不方便一直去找,希望大家给我个判断.
我的连接属性:
<client>
<endpoint address="net.tcp://192.168.41.50:50457/net" binding="netTcpBinding"
bindingConfiguration="NetTcpBinding_IServer3" contract="FtpServer.IServer"
name="NetTcpBinding_IServer" />
</client>
这是联内网机器的,可以正常的访问和更新.如果联服务器是不是就把192.168.41.50改成服务器地址就可以了?服务器地址是否就是我远程登录的那个IP?如果以上两个问题确定的话那我现在服务器开了服务还是访问不到一般是什么情况?希望有经验的朋友能给点意见.
------最佳解决方案--------------------
你在服务器端的IIS中配置了net.tcp的Binding了吗?
你调研一下IIS的配置吧。
------其他解决方案--------------------
你的服务是host在什么环境下啊?IIS?WinService?
------其他解决方案--------------------
你的服务好像是Host在一个Console中.
客户端报的是什么错啊
是不是类似 Error:无法连接到 http://192.168.0.213:10020/Serient/SysAuthorization/BizSerLib/BNPermisionCheckerOnCacheService。TCP 错误代码 10061: 由于目标计算机积极拒绝,无法连接。 192.168.0.213:10020。
这样的,如果是,那就多半是防火墙的端口问题啦
------其他解决方案--------------------
不是。你看不到还有端口号吗?
------其他解决方案--------------------
呵呵,所谓的wcf回调必须要求在直接反向可访问的网络环境。这在微软的各种wcf回调教程中有很多说明。
至于你们公司的网管,我总应该说出来他懂什么,这样才能知道他能帮你什么。如果你只知道他不懂,我想他是故意逃避责任了。
------其他解决方案--------------------
该回复于2010-10-16 11:41:18被版主删除
------其他解决方案--------------------
这个需要专门配置吗?我在内网的机器中也没配置,也可以访问的呀.具体能不能说一下.
------其他解决方案--------------------
我不太清楚这些,我就建了个服务,然后服务器打开,客户端添加服务引用那个地址就访问了,内网测试都是好的.客户端的设置首贴说了.好像没用到IIS这些.
服务端也差不多:
<system.serviceModel>
<services>
<service name="ServerPart.Server" behaviorConfiguration="sb">
<host>
<baseAddresses>
<add baseAddress="net.tcp://localhost:50457" />
<add baseAddress="http://localhost:50437"/>
</baseAddresses>
</host>
<endpoint address="net" binding="netTcpBinding" bindingConfiguration="bd" contract="ServerPart.IServer" />
<endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange" />