繁体   English   中英

如何设置节点服务器(nginx位于顶部)以与mongodb一起使用

[英]How to setup a node server (with nginx sat on top) to work with mongodb

我有一个节点快速应用程序,它与mongodb通信,并在进行一些处理后以JSON格式提供响应。 在本地计算机上运行时,该应用程序将按预期工作。

这是我的连接代码的样子

await MongoClient.connect(uri, async function (err, client) {
    ...
}

但是,在本教程之后 ,我已将应用程序部署到aws ec2实例,在实例中,我在节点应用程序的顶部添加了nginx作为层。 现在504 Gateway Time-out在尝试连接到mongodb的任何路由上,我都收到504 Gateway Time-out

我的Nginx配置中的服务器块

 server {
     listen         80 default_server;
     listen         [::]:80 default_server;
     server_name    localhost;
     root           /usr/share/nginx/html;
     location / {
         proxy_pass http://127.0.0.1:3000;
         proxy_http_version 1.1;
         proxy_set_header Upgrade $http_upgrade;
         proxy_set_header Connection 'upgrade';
         proxy_set_header Host $host;
         proxy_cache_bypass $http_upgrade;
       } 
 }

我知道mongodb不使用HTTP,这是nginx用于通信的内容。 因此,我尝试按照本教程进行操作,但是没有运气。

有人能指出我正确的方向吗?

原来,当我将应用程序部署到ec2实例时,我完全忘记将服务器的IP地址列入白名单。 因此,为什么一切在本地都能正常工作(我的本地IP地址已列入白名单)。

这与NGINX无关。 我的错。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM