向AWS Elastic Beanstalk发送请求时,信号器连接被强制关闭

时间:2018-11-01 07:15:42

标签: asp.net-mvc amazon-web-services amazon-ec2 signalr amazon-elastic-beanstalk

  • 在项目开始时,我使用http直接通过IP地址而不是域名与ec2连接,并且可以很好地连接到我的c#客户端和通过ip adderess连接到ec2的Web客户端。

  • 最近,我在负载均衡器中添加了Https,并为所有ec2配置了https安全组,并且开始出现故障。

  • 具有https和ip地址的Signalal Web客户端在ec2上可以正常连接,但是具有https和ip地址的c#客户端未连接。 C#客户端连续抛出连接关闭方法。

  • 为解决此问题,我将连接url从ip更改为弹性beantalk域名,将c#客户端和信号器连接了,但是发生了以下情况。

1)第一次连接beantalk域名时,它在建立连接时响应400报头错误,并且还响应数据库中的数据,因此首次建立连接。

2)服务器回复后,我调用了服务器的另一种方法,当时发生错误,指出连接已断开,请在向服务器发出请求之前启动连接。

3)在signalr中,有一个连接关闭方法,如果连接已经关闭并且没有调用,则调用该方法。

4)我已经在Internet中搜索了查询,发现我们必须在beantalk上配置套接字连接,因为它们与nginx存在相同的问题。我正在使用IIS,对此没有特别的答案。

5)我尝试直接在ec2实例域名上进行连接,但是signalr没有建立连接,而是直接启动连接关闭方法,而没有任何错误或警告。

6)在我的网络配置中,我启用了443和80的入站端口。如果我从浏览器向beantalk或ec2的域URL发出请求,则其工作正常

  • 如果您有任何想法在AWS ec2或弹性beantalk上配置套接字,则可能有助于解决此问题。

0 个答案:

没有答案