【问题标题】:Running Node.js server on centos on vagrant在 vagrant 上的 centos 上运行 Node.js 服务器
【发布时间】:2015-08-08 00:18:54
【问题描述】:

我想在虚拟机中运行 Node.js 服务器。

我执行了vagrant up 和node Server.js。
然后我从主机浏览器访问http://192.168.33.10:1337/。
但是,浏览器输出ERR_EMPTY_RESPONSE。
我该如何解决?

流浪文件

Vagrant.configure(2) do |config|
  config.vm.box = "centos"
  config.vm.network "private_network", ip: "192.168.33.10"
end

服务器.js

var http = require('http');

http.createServer(function(request, response) {
  response.writeHead(200, {'Content-Type': 'text/plain'});
  response.end('Hello World\n');
}).listen(1337, "192.168.33.10");

console.log('server running');

【问题讨论】:

  • 您不需要在服务器上指定 IP(因为它是它自己的 IP)删除这部分 - 还在 createServer 方法中添加 console.log(request.url); 以确保正确处理请求并且服务器打印出消息

标签: node.js centos vagrant


【解决方案1】:
  1. 确保该框已按照@frederic 所说的那样绑定到正确的地址。
  2. 确保它不是防火墙:sudo service iptables stop
  3. 确保您的主机(您的计算机)可以访问 vagrant VM。 3a。如果您桥接,请使用 VM 的内部 IP 3b。如果您将端口转发到虚拟机( config.vm.network "forwarded_port", guest: 80, host: 8080 ),请从您的主机(您的计算机)使用http://localhost:8080。

【讨论】:

    猜你喜欢
    • 2012-12-28
    • 2019-08-01
    • 2018-08-13
    • 1970-01-01
    • 2015-10-09
    • 2015-07-21
    • 2016-12-21
    • 1970-01-01
    • 2015-06-08
    相关资源
    最近更新 更多