访问IIS中的.svc文件时的HTTP 404

我最近创build了一个WCF服务,当从Visual Studio 2008testing时工作正常,但是当我将项目部署到IIS,并尝试从IIS访问.svc文件时,出现此错误:

"Server Error in '/' Application.The resource cannot be found. " 

过去4天我一直有这个问题。

在IISpipe理器的处理程序映射中,我可以看到.svc的两个条目:

 svc-Integrated and svc-ISAPI-2.0 

您需要将SVC扩展的映射添加到ASP.NET。 最简单的方法是从C:\ Windows \ Microsoft.NET \ Framework \ v3.0 \ Windows Communication Foundation运行ServiceModelReg.exe -i 。 如果您还没有这样做,您可能还需要启用ASP.NET。


如果您使用的是Windows Server 2012,请按照以下说明进行操作:

  • 在IIS8上的WCF; * .svc处理程序映射不起作用

什么对我来说,在Windows 2012 Server R2上:

WCF HTTP 404

谢谢去“Aaron D”

我在一篇博客文章中发现了这些指示 ,指示了这一步,这对我来说很合适(Windows 8,64位):

确保在Windowsfunction中,你有.Net框架下的两个WCF选项打勾。 所以进入控制面板 – >程序和function – >打开/closuresWindowsfunction – >function – >添加function – > .NET Framework XXfunction。 确保.Net框架表示已经安装了它,并确保选中它下面的WCF激活节点(勾选checkbox),同时也检查WCF激活下的两个选项。

 这些是:
 * HTTP激活
 *非HTTP激活
两个选项都需要选中(勾选checkbox)。 

我看到你已经解决了你的问题 – 但是为了后代:

我们有一个类似的问题,SVC处理程序已经正确安装。 我们的问题是ExtensionlessUrl处理程序在到达SVC处理程序之前处理请求。

要在Web服务器级别检查IISpipe理器中的处理程序映射,请按顺序查看处理程序列表(在右侧是一个选项)。 如果各种ExtensionlessUrl处理程序出现在SVC处理程序上方,则重复向下移动它们直到它们位于底部。

validation你的目录已经转换成应用程序是你的IIS。

今天我也有同样的问题。

对于我来说,解决scheme是进入IIS,右键单击新的网站名称,select属性,ASP.Net,并将ASP.Net版本从“1.1.4322”(它已被设置为默认值)到2.0.50727。

一旦我完成了,我可以右键单击.svc文件,单击“浏览”并查看友好的服务网页。

在我的情况下,错误是由文件applicationhost.config(\ System32 \ inetsrv \ config)中不正确的映射设置引起的。 出于某种原因,Visual Studio 2013在IIS中创build虚拟目录时会损坏它。 修复方法是手动编辑文件中的网站部分。

有2个.net框架版本是在server 2012中添加angular色/function的function下给出的

一个。 3.5

湾 4.5

根据使用的框架,您可以在WCF服务下启用HTTP激活 。 🙂

在我的情况下,Win 10.文件applicationHost.config被VS 2012破坏。你可以在C:\ inetpub \ history下复制这个文件的历史logging。 然后重新启动IIS,它正常工作。

在Windows 10中启用IIS 6pipe理兼容性后,这也可能成为问题。在WCF Services下设置框架HTTP激活将解决此问题。