在amazon linux的80端口上运行NodeJs应用程序

问题描述 投票:0回答:2

我正在尝试让 NodeJs 应用程序使用端口 80 在 Amazon Linux 服务器上运行。目前,当我运行该应用程序时,它默认为端口 1024。我知道这是因为我必须是 root 才能运行在端口 80 上,但考虑到我在 aws linux 机器上,我无法以 root 身份运行它。我已经挖掘了一段时间,但我缺少需要调整的内容才能使其正常运行。

node.js amazon-web-services amazon-ec2 amazon-linux
2个回答
0
投票

这是一个实际答案。

使用 iptables 将流量转发到您要使用的任何端口。 您最初必须使用 sudo 来设置它,否则您可以在没有超级用户权限的情况下运行您的 Web 服务器。

sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3000

来源:


-1
投票

sudo bash
将允许您在 EC2 Amazon Linux 实例上以
root
身份进行连接。 我想问
why
你想在端口 80 上运行 NodeJS 吗?最佳实践是在你的实例前面有一个负载均衡器来接受 HTTPS 调用,并中继到 NodeJS 将在你的实例上运行的任何端口(在私有子网中)。

我建议阅读此文档以了解如何执行此操作:https://aws.amazon.com/getting-started/projects/deploy-nodejs-web-app/

© www.soinside.com 2019 - 2024. All rights reserved.