Node.js 我收到Nodejs错误EPERM:3000的原因是什么?
我正在ubuntu服务器上部署node.js ts应用程序 正在侦听端口3000的app.js文件Node.js 我收到Nodejs错误EPERM:3000的原因是什么?,node.js,web-deployment,Node.js,Web Deployment,我正在ubuntu服务器上部署node.js ts应用程序 正在侦听端口3000的app.js文件 var port = 3000 app .use(authRoutes_1.default.routes()) .use(keysRoutes_1.default.routes()) .use(exchangesRoutes_1.default.routes()) .use(wishlistRoutes_1.default.routes()) .listen
var port = 3000
app
.use(authRoutes_1.default.routes())
.use(keysRoutes_1.default.routes())
.use(exchangesRoutes_1.default.routes())
.use(wishlistRoutes_1.default.routes())
.listen(port, function () {
console.log('Listening on port ' + port);
});
当我通过浏览器接近我的域名时,我得到一个错误listen eperm 3000
然后,我用以下代码创建了另一个简单的服务器侦听器js文件
var http = require('http');
var server = http.createServer(function(req, res) {
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.end('Hello World!');
});
server.listen(3000);
令人惊讶的是,它工作得非常好
另一件有趣的事情是,使用node app.js从ubuntu运行这两个文件会抛出相同的EPERM错误
如何解决这个难题?另一个进程似乎已经在使用端口3000。您可以尝试类似于
sudolsof-i-P-n | grep LISTEN
的方法来检查是否有其他进程使用该端口吗?或者您可以尝试切换到另一个端口以查看您的节点服务器是否工作?抱歉,我在代码中没有提到第二个示例使用相同的端口并且工作良好