检测是否在Windows Server 2012上安装了websocket

时间:2016-01-18 04:25:15

标签: c# asp.net websocket signalr windows-server-2012

是否有任何代码或程序可用于确认我的Windows Server 2012服务器上是否正确安装了WebSocket

我正面临着WebSocket的问题。它无法在Windows Server 2012上运行。我已在Windows Server 2012上安装了WebSockets

enter image description here

我已经重启服务器两次了。

WebSocket在我的服务器上运行的证据是我的以下url(Signalr用来决定WebSocket是否打开)

http://abcdedf.com/signalr/default/negotiate?clientProtocol=1.5&connectionData=%5B%7B%22name%22%3A%22myhub%22%7D%5D&_=14530662444正在返回以下回复:

{
Url: "/signalr/default",
ConnectionToken: "xxxx",
ConnectionId: "cf63a537-ed4a-4d29-afaf-f0aec454b0c2",
KeepAliveTimeout: 6,
DisconnectTimeout: 9,
ConnectionTimeout: 110,
TryWebSockets: false,
ProtocolVersion: "1.5",
TransportConnectTimeout: 5,
LongPollDelay: 0
}

即TryWebSockets:false

在我的本地Windows 8计算机上运行此应用程序的相同代码。它给出了

TryWebSockets:true

Windows Server 2012上的IIS版本是IIS 8.5。 我的网站在.Net Framework 4.5下运行。 Windows防火墙已经在那里了。 在我的应用设置中,我也添加了这个:

  <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />

在我的web.config中我也有这个:

 <webSocket enabled="true"/>

Windows Server 2012上是否需要进行任何特殊设置才能使WebSocket正常工作?

是否有任何工具可以检查我的Windows Server 2012服务器上是否启用了WebSocket?

1 个答案:

答案 0 :(得分:0)

我经常遇到由Internet Explorer中的Internet选项引起的Windows 2012服务器问题,因为它非常严格。

尝试打开Internet Explorer - &gt;互联网选项 - &gt;安全性和调整设置(降低安全级别以进行测试)然后转到高级并查看安全性下可能阻止套接字的某些设置。

我没有遇到您的具体问题,但只要Windows Server和Windows Client之间存在差异,大部分时间都是因为安全限制适用于Windows Server。