WCF Restful 服务 IIS 错误

Posted

技术标签:

【中文标题】WCF Restful 服务 IIS 错误【英文标题】:WCF Restful service IIS Error 【发布时间】:2013-10-29 05:24:20 【问题描述】:

我已在 somee.com 上提供服务并部署,但我收到处理程序错误。 http://rssfeed.somee.com/RSSFeed.svc 我不确定是什么导致了问题,或者我在这里缺少什么。

【问题讨论】:

【参考方案1】:

您可能需要在您的服务器上启用 WCF/http 激活。

在 server 2012 上,它位于服务器管理器 -> 角色和功能 -> 功能 -> .net framework 4.5 功能 -> wcf 服务 -> http 激活

在 Windows 7/8 上:程序和功能 -> 打开或关闭 Windows 服务 -> .NET Framework 高级服务 -> WCF -> Http 激活。

试试看,运行 iis reset 并刷新你的服务

专门针对somee.com,在wcf服务中使用svc扩展;

如果您的 WCF 服务具有扩展名 .svc,您需要添加一个托管 Web.Config 文件中该扩展的处理程序。

Web.Config Handler 配置示例:

v3

<system.webServer>
    <handlers>
        <add name=".svc" verb="*" path="*.svc" type="System.ServiceModel.Activation.HttpHandler, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />

v4

<system.webServer>
    <handlers>
         <add name=".svc" verb="*" path="*.svc" type="System.ServiceModel.Activation.ServiceHttpHandlerFactory, System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

来源:http://somee.com/doka/DoHelpTopics.aspx?docode=false&thnid=113

【讨论】:

它在我的本地系统上完美运行,出现的问题是当我将它上传到服务器时 我的 IIS 配置正确,我添加了 mime 类型并激活了 wcf http 激活,问题出在托管服务器上 托管服务器上也启用了 WCF / http 激活? 如何检查?实际上我正在使用somee.com 来托管我的服务,但我在控制面板中没有找到任何此类选项。 我更新了我的帖子,您是否检查过您是否已在 web.config 中注册了处理程序?【参考方案2】:

除了上述之外,我还会在您的 web.config 文件中检查您的网络服务映射。

以及你正在使用的绑定类型的配置。例如

<service behaviorConfiguration="RestBehavior" name="folder1.folder2.service">
        <endpoint address="" behaviorConfiguration="web" binding="webHttpBinding" bindingConfiguration="webBinding"
           contract="folder1.folder.Iservice" />
      </service>

然后定义您的绑定以及您需要的配置。

【讨论】:

以上是关于WCF Restful 服务 IIS 错误的主要内容,如果未能解决你的问题,请参考以下文章

Restful WCF IIS 7.5 405 方法不允许间歇

使用 WCF/RESTful 服务的 Android 应用程序

基于WinService,开发Restful 风格的Wcf 服务端

WCF Restful Web 服务客户端限制

RESTful WCF 服务返回“找不到资源”。错误

Restful WCF 无法达到 operationcontract