IIS Express错误http 404.17 - 未找到运行WCF服务

问题描述 投票:8回答:3

我刚刚在VS2013中使用框架3.5创建了一个WCF服务应用程序。用于公开我在类库项目中使用的一些方法。

一切都很顺利,但当我试图查看服务是否运行时,它没有。相反,我得到了下一个错误。

HTTP错误404.17 - 未找到请求的内容似乎是脚本,静态文件处理程序不会提供。

最有可能的原因是:请求与通配符mime映射匹配。请求将映射到静态文件处理程序。如果有不同的前提条件,请求将映射到不同的处理程序。

您可以尝试的事项:如果要将此内容作为静态文件提供,请添加显式MIME映射。

我已经在IIS上处理了它,但在IIS Express中没有处理它我有点丢失了。

我没有在这台机器上安装IIS,因为我使用的是遥控器,但我需要调试一些东西而且我被卡住了。谢谢你的帮助。

我也用visual命令提示符运行了servicesmodelreg -i,但是错误仍然存​​在。

UPDATE

可能有用的是澄清它只发生在IIS Express中,因此它正在影响开发。我已将VS2013更新到Win 8.1 64bit上运行的最新补丁

wcf visual-studio-2013 iis-express http-error
3个回答
19
投票

尝试运行“C:\ Program Files \ IIS Express> Wscript.exe WCF35Setup.js install”,这是一个在IIS Express上启用WCF 3.5服务的脚本。参考:http://www.iis.net/learn/extensions/introduction-to-iis-express/iis-75-express-readme


5
投票

似乎WCF映射未在IIS中注册。

要解决上述错误:

  • 导航 ” %SYSTEMROOT%\Microsoft.NET\Framework\v3.0\Windows Communication Foundation

“在Visual Studio命令提示符下。

  • 执行“servicemodelreg -i”手动安装映射。

有关更多详细信息,请参阅MSDN上的ServiceModel Registration Tool (ServiceModelReg.exe)

-

或者,

在Windows功能中为qCF服务启用HTTP Activation

  1. 单击“开始”按钮,然后单击“控制面板”。
  2. 单击“程序”,然后单击“程序和功能”。
  3. 在“任务”菜单上,单击“打开或关闭Windows功能”。
  4. 选择WCF Non-Http Activation Components框并保存设置。

资源 :

http://msdn.microsoft.com/en-us/library/ms732012(v=vs.110).aspx


1
投票

在尝试了此处建议的所有推荐解决方案之后:

  • servicemodelreg -i
  • Wscript.exe WCF35Setup.js安装
  • 启用HTTP激活

其他一些人在其他地方建议:

  • 以管理员身份运行Visual Studio
  • 使用“本地IIS”而不是IIS Express

我终于确定了我的问题。 WCF代码的目标是.NET framework 3.0,我没有为3.0 / 3.5启用IIS支持!解决方案很简单。启用“.NET Extensibilty 3.5和ASP.NET 3.5”。

Enable Features

© www.soinside.com 2019 - 2024. All rights reserved.