process.env.PORT || 3000
在 Node.js 中用于什么?我在某处看到了这个:
app.set('port', process.env.PORT || 3000);
如果用来设置 3000
作为监听端口,我可以用这个代替吗?
app.listen(3000);
如果不是为什么?
原文由 user-S 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果你运行 node index.js
,节点将使用 3000
如果运行 PORT=4444 node index.js
,Node 将使用 process.env.PORT
4444
。使用 sudo
运行低于 1024 的端口。
原文由 Abdennour TOUMI 发布,翻译遵循 CC BY-SA 3.0 许可协议
2 回答2k 阅读✓ 已解决
5 回答2.2k 阅读
3 回答2.1k 阅读
2 回答1k 阅读✓ 已解决
3 回答1.2k 阅读
3 回答1.5k 阅读
1 回答1.1k 阅读✓ 已解决
在许多环境中(例如 Heroku),按照惯例,您可以设置环境变量
PORT
来告诉您的 Web 服务器监听哪个端口。所以
process.env.PORT || 3000
表示:环境变量 PORT 中的任何内容,如果没有,则为 3000。因此,您将其传递给
app.listen
或app.set('port', ...)
,这使您的服务器能够接受来自环境的“监听哪个端口”参数。如果您通过
3000
硬编码为app.listen()
,则您始终在侦听端口 3000,这可能只适合您,也可能不适合您,具体取决于您的要求和运行服务器的环境。