相关疑难解决方法(0)

Node.js/Express.js App仅适用于端口3000

我在我的服务器上运行了一个Node.js/Express.js应用程序,它只适用于端口3000,我试图找出原因.这是我发现的:

  • 如果不指定port(app.listen()),则应用程序会运行,但不会加载网页.
  • 在端口3001(app.listen(3001))或任何其他未使用的端口上,应用程序运行但网页未加载.
  • 在端口2999上,应用程序抛出错误,因为其他东西正在使用该端口.
  • 在端口3000上,应用程序运行并且网页加载正常.

我知道Express应用程序默认为端口3000.但奇怪的是,我的应用程序仅在我明确让它在端口3000(app.listen(3000))上运行时运行.

我在第220行找到了这个/usr/bin/express:

app.set(\'port\', process.env.PORT || 3000);
Run Code Online (Sandbox Code Playgroud)

这是如前所述:将端口设置为指定的端口,如果未指定任何内容,则设置为3000.

如何让我的应用程序在8080或3001等不同的端口上运行?

谢谢!

编辑:代码示例(非常简单的节点/ Express应用程序)

var express = require("express");
var app = express();

app.get('/', function(req, res){
    res.send('hello world'); 
});

// Only works on 3000 regardless of what I set environment port to or how I set [value] in app.set('port', [value]).
app.listen(3000);
Run Code Online (Sandbox Code Playgroud)

javascript port configuration node.js express

91
推荐指数
5
解决办法
19万
查看次数

标签 统计

configuration ×1

express ×1

javascript ×1

node.js ×1

port ×1