Node.js在VMware中表示ERR_CONNECTION_REFUSED

时间:2018-01-29 20:32:57

标签: node.js express vmware

我已经设置了vmware工作站,Ubuntu 16.06桌面作为我的客户机,windows 10作为主机。

nodejs 9.4.0 表达4.16.2

和简单的服务器HTTP并表达:

const http = require('http'),
  PORT = 4000;

http.createServer((req, res) => {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.write('It works!');
    res.end();
}).listen(PORT);

console.log("Listening on port " + PORT);

**/


/*** EXPRESS BASED TEST*/

const express = require('express');
const app = express();
PORT = 4000;

app.get('/', (req, res)=>{
    res.send("it works!");
})

app.listen(PORT, 'localhost', ()=>{
    console.log('Listening on port: ' + PORT)
});
/****/

当我尝试在guest runnin express时从我的主机浏览器打开测试网页时会发生什么 - 我得到了ERR_CONNECTION_REFUSED。但是,当我启动简单的http服务器 - 它连接!我试图用telnet连接,ssh ......转向防火墙......行为是一样的......

快递有问题吗?有办法解决吗?

1 个答案:

答案 0 :(得分:0)

解决方案在这里:

Node.js connect only works on localhost

在我的快递应用程序中,我让它在localhost上侦听,这是127.0.0.1,它是环回地址。将其更改为0.0.0.0后,问题就解决了。