如何解决将WCF服务发布到实时网站
| 我只玩wcf东西大约一个星期。我已经在Visual Studio中的开发服务器上运行它,现在我要将项目放到Web上。我曾在Visual Studio中使用pub / ftp来发布它。我的FTP客户端确认文件在那里,但是当我在浏览器中输入地址时,出现以下错误: \'/ \'应用程序中的服务器错误。 无法找到该资源。 说明:HTTP404。您正在寻找的资源(或其依赖项之一)可能已被删除,名称更改或暂时不可用。请查看以下网址,并确保其拼写正确。 要求的网址:/EquipService.svc 在服务器上是否需要更改某些设置或需要进行某些设置?我不知道为什么它说文件不可用,因为FileZilla显示了服务器上的文件。任何帮助,将不胜感激。 谢谢 编辑: 这是Web.config,但是作为序言,我不知道这是做什么的,我只是从另一个项目中复制了点点滴滴,直到错误停止并起作用为止。 :|<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<protocolMapping>
<add scheme=\"http\" binding=\"webHttpBinding\" bindingConfiguration=\"webHttpBinding\"/>
</protocolMapping>
<behaviors>
<endpointBehaviors>
<behavior>
<webHttp helpEnabled=\"true\" automaticFormatSelectionEnabled=\"true\"/>
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name=\"metadataSupport\">
<serviceMetadata httpGetEnabled=\"true\" />
<serviceDebug includeExceptionDetailInFaults=\"false\"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled=\"true\">
<baseAddressPrefixFilters>
<add prefix =\"localhost\"/>
</baseAddressPrefixFilters>
</serviceHostingEnvironment>
<bindings>
<webHttpBinding>
<binding name=\"webHttpBinding\">
<security mode=\"None\">
</security>
</binding>
</webHttpBinding>
</bindings>
<services>
<service name=\"EquipService.svc\">
<endpoint address=\"~/EquipService.svc\" binding=\"webHttpBinding\" contract=\"Equipment.IEquipService\" />
<endpoint contract=\"IMetadataExchange\" binding=\"mexHttpBinding\" address=\"mex\" />
</service>
</services>
我仍然不太了解为什么这些服务可以在Visual Studio服务器上运行,而不是在Web服务器上运行。
但是感谢您的关注。
解决方法
使用WCFTestClient.exe测试您的服务。
我学到的几件事。创建一个单独的服务项目总是好的。
您可以创建一个Web服务,并且可以使用localhost作为地址在同一Web项目中使用它。
我有一种情况,我试图使用javascript从我的网站的HTML页面上调用它,但由于我在常规的webapp中创建了webservice,所以它不起作用。为了从javascript访问它,我需要在Internet上发布该服务,以便javascript可以引用链接(而不是本地主机)。
, 好吧,我确实设法找出了问题的原因。是服务器。由于某种原因,它的物理路径指向错误的文件夹,现在球在他们的球场上进行修复。
谢谢您的帮助
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。