首页 文章

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

提问于
浏览
247

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

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

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

%windir%\Microsoft.NET\Framework\v3.0\WindowsCommunication Foundation\ServiceModelReg.exe –i

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

The resource you are looking for does not have a handler associated with it.

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

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

12 回答

  • 3

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

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

    b)所有WCF服务

  • 27

    进一步来说:

    • 运行 Server Manager (在任务栏和开始菜单上)

    • 选择要管理的服务器(可能是本地服务器)

    • 向下滚动到“ Roles and Features ”部分 .

    • 从“任务”下拉列表中选择“ Add Role or Feature

    • 在左侧页面列表中的“ Add Role or Feature Wizard " dialog, click down to " Features ” .

    • 展开 ".Net 3.5"".Net 4.5" ,具体取决于您安装的内容 . (如果你没有,你可以回到“ roles ”屏幕添加 .

    • 在“ WCF Services ", check the box for " HTTP-Activation ”下 . 如果您知道需要它们(tcp,命名管道等),也可以添加非http类型 .

    • 单击 "Install" 按钮 .

  • 36

    我必须在 .NET Framework 4.5 Advanced Services > WCF Services 中启用 HTTP Activation

    Enable HTTP Activation

  • 10

    带有IIS8的Windows 8

    • 点击 Windows+X

    • 选择 Programs and Features (列表中的第一项)

    • 选择左侧的 Turn Windows Features on or off

    • 展开 .NET Framework 4.5 Advanced Services

    • 展开 WCF Services

    • 启用 HTTP Activation

  • 0

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

    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
    
  • 0

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

    • 从"Remove Roles and Features Wizard" .NET Framework 4.5功能/ ASP.NET 4.5及其所有相关功能中删除

    • 重新安装已删除的功能 .

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

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

  • 2

    对于Windows 8计算机,没有“服务器管理器”应用程序(至少我无法找到它) .

    Though I was able to resolve the problem . 我不确定我执行以下操作的顺序,但看起来像以下几个/几个操作有帮助:

    • 打开“打开或关闭Windows功能”上的以下内容a).Net Framework 3.5 - WCF HTTP激活和非Http激活b)所有WCF服务下(如本问题的答案之一所述)

    • 在“%windir%\ Microsoft.NET \ Framework \ v3.0 \ Windows Communication Foundation \”文件夹中执行“ServiceModelReg.exe -i”

    • 通过两个命令注册ASP.NET 2.0(在文件夹C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727中):

    aspnet_regiis -ga“NT AUTHORITY \ NETWORK SERVICE”aspnet_regiis -iru

    • 重新启动PC ...看起来像是因为操作## 3和4在我的ASP.NET配置中被破坏了

    • Repeat action #2

    • 从“程序和功能”中安装另外两个选项:.Net Framework 4.5 Advanced Services . 我检查了两个子选项:ASP.NET 4.5和WCF服务

    • 重新启动应用程序池 .

    序列有点疯狂,但这对我有帮助,可能对其他人有所帮助

  • 1

    在Windows 8或Windows Server 2012上配置IIS 8时,安装顺序非常重要 .

    我在配置IIS 8时遇到了很多问题,但最后这些链接对我有所帮助

  • 41

    使用PowerShell,您可以使用以下命令安装所需的功能:

    Add-WindowsFeature 'NET-HTTP-Activation'
    
  • 510

    在Windows 10(客户端)上,您也可以使用脚本编写脚本

    Enable-WindowsOptionalFeature -Online -NoRestart -FeatureName WCF-HTTP-Activation45 -All
    

    请注意,这是与服务器skus不同的命令

  • 2

    它是.NET框架的HTTP激活功能Windows Process Activation功能也是必需的

  • 201

    这对我来说真的很愚蠢 . 在这里添加它,因为它是svc 404问题上比较流行的线程之一 .

    我在项目设置'\ Web \ Project URL中粘贴了:

    http://blah.webservice.local.blahblah.com/Blah.svc
    

    并且由于某种未知的原因(已经完成了这一千次)并没有立即发现.svc文件的名称在最后 .

    DOH!

    我刚刚从我的WCF测试客户端粘贴了地址,但没有充分检查 . 这在后台做的是在.svc地址创建一个IIS应用程序,我从IIS中得不到任何东西 . 我无法弄清楚我甚至无法点击.svc文件 .

    显而易见,只需删除IIS中的应用程序并更改项目URL即可 .

    经过近20年的努力,你仍然可以犯学生错误/新手错误 . 希望这可以帮助有人 .

相关问题