反应服务器如何通过私有IP与节点服务器联系

时间:2019-03-29 06:26:05

标签: node.js amazon-web-services amazon-ec2 server

我在AWS上有3个ec2实例

  • 反应服务器
  • 节点服务器
  • MongoDB服务器

现在我想通过私有IP将我的React Server连接到Node服务器。简而言之,如果我通过公共IP呼叫节点服务器,它将不会响应(出于安全目的)。

当前,我的React服务器将通过公共IP与Node Server通信。如果我通过公共IP呼叫我的节点服务器,它将响应(我不想发生)

我为该链接提供了帮助,但是没有实现https://www.digitalocean.com/community/tutorials/how-to-set-up-a-node-js-application-for-production-on-centos-7的运气

我还在节点服务器上附加了专用ip,并通过专用ip进行响应来调用节点服务器

  app.listen(app.get('port'), "xxx.xx.xx.xx",function(){
    console.log('Server Started on Port '+app.get('port'));
  });

我能够通过Node服务器通过私有IP连接Mongo Server。

在我的Mongo Server上,aws入站规则:我允许节点服务器专用ip,类似地,在我的节点服务器上,我也允许React服务器专用ip。

有没有人可以告诉我如何解决此问题,因为根据我们的个人观点,我们的后端服务器不会暴露给外界。其余所有专家都会给我一些指导,以便我解决此问题。

非常感谢您的帮助/建议

问题更新

在我的节点服务器入站规则上,我允许React Server专用IP,以便只有react服务器与Node建立连接。

此后,我进入React服务器并打开终端并输入命令

curl http://xxx.xx.xx.xxx:3000 (i.e my node private IP)

它将响应,但是当我在连接后端请求的代码上将IP从公共ip更新为私有IP时,它将不会响应。我对此感到困惑。

1 个答案:

答案 0 :(得分:0)

您将需要一个AWS-VPC(虚拟私有云)。 VPC的体系结构应包含至少1个公共子网和1个私有子网。将您所有的应用程序实例放在专用子网中,它们将能够相互通信。将反向代理放在公共子网中,然后让节点服务器充当其后端。这样可以确保保持应用程序体系结构的清洁。 如果您创建2个公共子网和2个私有子网,VPC还将帮助您创建高可用性设置。