[英]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.