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

Car*_*l R 264 asp.net wcf iis-8 iis-8.5

我试图在2012年版本8400上运行IIS8中运行的wcf服务.

在安装web角色时,没有像2008年那样找到wcf的东西(3.51以下).

安装时svc处理程序映射丢失了,所以我做了一个:

%windir%\Microsoft.NET\Framework\v3.0\WindowsCommunication Foundation\ServiceModelReg.exe –i
Run Code Online (Sandbox Code Playgroud)

现在处理程序映射就在那里,但我仍然得到:

The resource you are looking for does not have a handler associated with it.
Run Code Online (Sandbox Code Playgroud)

(我删除了静态文件处理程序.)

该网站使用经典管道以使用模拟.

小智 539

进一步来说:

  1. 运行Server Manager(在任务栏和开始菜单上)
  2. 选择要管理的服务器(可能是本地服务器)
  3. 向下滚动到" Roles and Features"部分.
  4. Add Role or Feature从任务下拉列表中选择" "
  5. 在" Add Role or Feature Wizard"对话框中,单击Features左侧页面列表中的" ".
  6. 展开".Net 3.5"".Net 4.5"取决于您安装的内容.(roles如果你没有,你可以回到" "屏幕添加.
  7. 在" WCF Services"下,选中" HTTP-Activation" 框.如果您知道需要它们(tcp,命名管道等),也可以添加非http类型.
  8. 单击"Install"按钮.

  • 从命令行:dism/Online/Enable-Feature/FeatureName:WCF-HTTP-Activation/All (14认同)
  • 如果您首先从v3.0目录运行ServiceModelReg.exe -i,则还需要运行ServiceModelReg.exe -ua以撤消它,然后才能使用它. (9认同)
  • 我真的盯着"服务器角色"页面一小时.我不知道你只需点击"下一步"或点击左侧的"功能"即可.o_O +1 (9认同)
  • 这个在我的情况下不起作用,因为我在Windows 8(使用IIS 8). (6认同)
  • 什么是http://gyorgybalassy.wordpress.com/2012/09/24/publishing-a-wcf-service-on-iis8/?哪个更好? (4认同)
  • 我需要重启服务器=( (2认同)
  • 适用于Server 2016上的IIS 10 (2认同)

jos*_*ley 213

我不得不启用HTTP Activation.NET Framework 4.5 Advanced Services>WCF Services

启用HTTP激活

  • 这是您需要为没有服务器管理器的Windows 8所做的事情 (10认同)
  • 适用于Windows 10,IIS 10 (4认同)
  • 当您在Windows 8和Windows 8.1中托管WCF服务时,这就是答案 (2认同)
  • 我在IIS 10上遇到类似问题,默认情况下Http Activation已关闭.启用它可以立即解决问题.谢谢! (2认同)

小智 44

打开"打开或关闭Windows功能"上的以下内容

a).Net Framework 3.5 - WCF HTTP激活和非Http激活

b)所有WCF服务

  • 是的,这适用于所有没有服务器版本的人 (2认同)

Sim*_*ver 39

Windows 8与IIS8

  • 击中 Windows+X
  • 选择Programs and Features(列表中的第一项)
  • 选择Turn Windows Features on or off左侧
  • 扩大 .NET Framework 4.5 Advanced Services
  • 扩大 WCF Services
  • 启用 HTTP Activation


Jon*_*Jon 28

我现在更喜欢通过脚本来做这件事

REM install the needed Windows IIS features for WCF
dism /Online /Enable-Feature /FeatureName:WAS-WindowsActivationService
dism /Online /Enable-Feature /FeatureName:WAS-ProcessModel
dism /Online /Enable-Feature /FeatureName:WAS-NetFxEnvironment
dism /Online /Enable-Feature /FeatureName:WAS-ConfigurationAPI
dism /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation
dism /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation45

REM Feature Install Complete
pause
Run Code Online (Sandbox Code Playgroud)

  • 谢谢`dism/Online/Enable-Feature/FeatureName:WCF-HTTP-Activation dism/Online/Enable-Feature/FeatureName:WCF-HTTP-Activation45`对我来说已经足够了... (2认同)

小智 10

我们设法通过以下方式解决Windows Server 2012下的错误:

  1. 从"删除角色和功能向导".NET Framework 4.5功能/ ASP.NET 4.5及其所有相关功能中删除
  2. 重新安装已删除的功能.

它接缝的安装顺序是原因.

此外,请确保在WCF服务下安装了HTTP激活.