有人有任何想法吗?我已经苦苦挣扎了一段时间。
我正在使用SignalR(Asp.net 5)。当我尝试本地调试(ISS 10.0 express)时,一切正常。SignalR正在工作(长轮询)。
现在,当我将应用程序发布到Azure时,我可以访问:.azurewebsites.net/signalr/hubs
但我无法访问.azurewebsites.net/signalr/hubs/negotiate,它返回:
指定的CGI应用程序遇到错误,服务器终止了该进程。
当我的Web应用程序调用$.connection.hub.start()时,它会失败。
GET XHR http://xxxx.azurewebsites.net/signalr/negotiate [HTTP/1.1 502 Bad Gateway]
我快没有主意了,不知道如何获得更多的调试信息。
我的“已尝试”列表中的小选择:
- 手动设置$.connection.hub.url路径为http://xxxx.azurewebsites.net/signalr/
- 启用/禁用websockets
- 从web.config httpPlatform中删除forwardWindowsAuthToken
编辑: 现在对此错误进行更多详细信息:
CryptographicException:数据保护操作失败。这可能是由于当前线程的用户上下文未加载用户配置文件引起的,当线程模拟时可能会出现这种情况。
仍然绝对不知道如何解决这个问题!