WCF在成功添加服务引用后无法连接到终结点

WCF在成功添加服务引用后无法连接到终结点,wcf,client,endpoint,Wcf,Client,Endpoint,我已在生产服务器上成功发布了WCF服务。我可以导航到该页面并查看默认的WCF页面 我可以通过“添加服务引用”将服务添加到我计算机上的客户端。我还可以“更新服务参考”,没有任何问题 通过运行VS2010附带的默认调试器,已确认该服务可在我的本地计算机上运行,无论是否使用客户端 尝试调用服务方法(从服务器托管服务)时,我收到此异常 没有可以接受消息的端点正在侦听。这通常是由不正确的地址或SOAP操作引起的。有关更多详细信息,请参阅InnerException(如果存在) 内部异常 {“远程服务器返回

我已在生产服务器上成功发布了WCF服务。我可以导航到该页面并查看默认的WCF页面

我可以通过“添加服务引用”将服务添加到我计算机上的客户端。我还可以“更新服务参考”,没有任何问题

通过运行VS2010附带的默认调试器,已确认该服务可在我的本地计算机上运行,无论是否使用客户端

尝试调用服务方法(从服务器托管服务)时,我收到此异常

没有可以接受消息的端点正在侦听。这通常是由不正确的地址或SOAP操作引起的。有关更多详细信息,请参阅InnerException(如果存在)

内部异常

{“远程服务器返回一个错误:(404)找不到。”}

我还尝试在服务器上运行一个客户机,看看是否可以连接,但我得到了相同的错误

我甚至试着只部署在创建WCF服务库(非常基本)时为您创建的基本WCF服务,没有做任何更改,部署成功,并得到相同的错误

我做错了什么?我曾经尝试过IIS配置、SSL证书等,但似乎没有什么可以解决它。我觉得我好像错过了一些非常基本的东西

编辑客户端配置

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding name="BasicHttpBinding_IService1" closeTimeout="00:01:00"
                    openTimeout="00:01:00" receiveTimeout="00:10:00"     sendTimeout="00:01:00"
                    allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
                    maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
                    messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
                    useDefaultWebProxy="true">
                    <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
                         maxBytesPerRead="4096" maxNameTableCharCount="16384" />
                    <security mode="None">
                        <transport clientCredentialType="None" proxyCredentialType="None"
                            realm="" />
                        <message clientCredentialType="UserName" algorithmSuite="Default" />
                    </security>
                 </binding>
            </basicHttpBinding>
        </bindings>
        <client>
            <endpoint address="http://SERVER_NAME.DOMAIN_NAME.com/TestService/TestService.Service1.svc"
                binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IService1"
                contract="ServiceReference1.IService1" name="BasicHttpBinding_IService1" />
        </client>
    </system.serviceModel>
</configuration>

需要检查的一些陷阱:

1) 检查配置文件上的服务URL是否正确。这包括协议。我最近也遇到过这样的情况:.config文件有“http://”,Web服务器只能通过HTTPS访问

2) 在IIS上禁用“必需的客户端证书”设置


3) 如果您的服务位于asp.net应用程序中,请检查是否存在任何身份验证/授权限制。允许匿名访问您的.SVC

您的绑定是什么?它是自托管的吗?绑定端口上是否有防火墙,这不是http的问题?感谢您的响应。请看上面。该端口在防火墙上是打开的,因为其他流量可以顺利通过。您的服务的配置文件是什么?这是最有可能出现问题的地方。