首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Heroku上设置node.js服务器的端口

在Heroku上设置node.js服务器的端口
EN

Stack Overflow用户
提问于 2015-02-24 21:02:42
回答 8查看 120.5K关注 0票数 73

我启动了一个带有以下行的node.js服务器来设置端口:

代码语言:javascript
复制
app.set('port', process.env.PORT || 8080);

这意味着,它要么读取PORT变量,要么默认为8080,就像在本地运行时那样。它们都不会发生在Heroku上,而且服务器总是使用默认端口80。知道怎么改吗?

代码语言:javascript
复制
heroku config
PORT: 8080
EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2015-02-24 21:57:00

Heroku设置要绑定的PORT变量,并侦听tcp/80。

票数 97
EN

Stack Overflow用户

发布于 2018-10-14 19:21:14

您应该使用heroku打开的端口,如下所示:

代码语言:javascript
复制
port = process.env.PORT || 80

如果端口还没有被设置,它就会将端口设置为80。

票数 39
EN

Stack Overflow用户

发布于 2020-08-20 12:48:25

所有的答案都很棒!想要稍微谈谈这个理论,以便人们能够理解Heroku为什么将其端口设置为80或443。

计算机必须创建一个约定,以便使用不同的协议相互通信。例如HTTP、HTTPS、SSH、FTP等。

因此,达成了协议,即计算机将与端口80通信HTTP,https将在端口443上通信,等等。下面的表格显示了所有协议的常规保留端口号。

现在,你们中的一些人可能会想,如果这些是预留端口号,为什么我的计算机允许我使用端口号80和443 (例如本地主机:80)。您可以使用任何端口号(实际上,您可以选择多达65,535个端口号),但是一旦您想要部署到生活中并希望其他人使用您的应用程序,那么您必须开始使用端口80 (HTTP)或端口443 (https)的约定。

Heroku通过提供一个环境变量process.env.PORT来申请正确的常规端口号,这样其他人就可以访问您的应用程序了。

票数 18
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28706180

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档