net.tcp不再在服务器2012工作

问题描述:

我无法获得服务器2012 iis主机net.tcp。net.tcp不再在服务器2012工作

在服务器2008R2/VS2012没有问题

在server2012/VS2012击中我第一次收到WDSL当“协议‘的net.tcp’没有注册HostedTransportConfiguration类型的实现。”,然后如果我点击刷新,我会得到“一个具有相同密钥的项目已被添加。”

从TraceViewer的错误,如果“服务是无法打开的IChannelListener”

但我已经设置了默认的网站上的绑定(必须使用命令行,因为它如果编辑净抛出异常。 tcp在网格中,这是一个已知问题)

我已经在应用程序级别将绑定设置为http,net.tcp,创建一个具有网络服务标识的新AppPool,并使用findPrivateKey为其授予权限。

我创建了Server 2008R2/VS2012的新版本,并且没有上述步骤的问题。

编辑服务器的其他注意事项2012
添加角色和功能:
验证安装了下列:
的Web Sever的 - 应用开发:所有检查,但CGI和ASP(经典)
.NET Framework 3.5的功能:所有检查
Windows进程激活服务:所有检查
IIS:默认Web站点:绑定的net.tcp 8081:

IIS:默认Web站点 - >高级设置 - >启用的协议:HTTP,的net.tcp
IIS:默认网站\服务 - >高级设置 - >启用协议:http,net.tcp

Server2012有什么特别的吗?

+0

启用该服务? – ChaosPandion

+0

@ChaosPandion - 应该是,我需要检查一个明确的设置吗? – Eric

+0

防火墙怎么样? IIS会在您的Web服务的防火墙中自动“打出一个洞”吗? – fourpastmidnight

经过一天的搜索,终于找到了它。我想它的另一个已知问题server2012 & IIS8

http://support.microsoft.com/kb/2803161

这里一些提示,你可以尝试:

1,打开命令提示符(管理员),然后运行:netstat的 -ONa

检查,如果你的服务是听您的服务器端口。

示例:您的端点是net.tcp:// localhost:8015/MyService。因此,运行上面的命令,您将看到一个项目: TCP 127.0.0.1:8015 0.0.0.0聆听

2 - 如果您的服务未侦听,请创建控制台应用程序并自行托管您的服务。 例子:

using System.ServiceModel.ServiceHost; 
public class Sample 
{ 
    ServiceHost host = new ServiceHost(typeof(MyService)); 

public static void Main() 
{ 
     host.Open(); 

     Console.WriteLine("listening..."); 

     Console.Read(); 

     host.Close(); 
    } 
} 

3,重复第一步,检查你的服务正在侦听的端口。

+0

感谢您的建议,但最终发现了server2012的另一个已知问题 – Eric