gpt4 book ai didi

node.js - 在 Elastic Beanstalk 上运行时如何获取服务器 URL?

转载 作者:太空宇宙 更新时间:2023-11-04 00:58:15 26 4
gpt4 key购买 nike

我使用restify创建部署到 Elastic Beanstalk 的 Node API。

var server = restify.createServer({ name: 'My API' });

server.listen(process.env.PORT || 1704, function() {
console.log('%s listening at %s', server.name, server.url);
});

在本地运行时,我看到:

My API listening at http://0.0.0.0:1704

但是,当在 Elastic Beanstalk 上运行时,日志显示:

My API listening at http://0.0.0.0:8081

这是为什么呢?

为什么 server.url 不是 http://my-api.elasticbeanstalk.com

我怎样才能获得真实的 URL(例如 http://my-api.elasticbeanstalk.com)?

最佳答案

elastic beanstalk Node 应用程序配置为在 8081 内部运行。您可以在node.conf中看到它:

upstream nodejs {
server 127.0.0.1:8081;
keepalive 256;
}

现在8081只是内部端口。如果你检查这个conf文件,你会发现外部端口实际上是8080,你的ELB将指向端口80。我希望它不会太困惑:)
至于您的 env URL,您可以从桌面发出 eb status 命令来查看 CNAME。它也是在 EB Web 控制台中编写的。

关于node.js - 在 Elastic Beanstalk 上运行时如何获取服务器 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28553426/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com