【问题标题】:Can't connect to nodejs on ubuntu xenial无法连接到 ubuntu xenial 上的 nodejs
【发布时间】:2016-10-24 13:34:49
【问题描述】:

我正在使用 vagrant 在 vi​​rtualbox 上创建一台机器。该机器只有全新安装的 Ubuntu(更新)和节点。

node server.js 适用于我系统中的安装。可以在 chrome 上看到“Hello world”。 但是当我 ssh 进入我的机器并在服务器上使用 node server.js 时,我在 chrome 上得到了 ERR_CONNECTION_RESET。

这是我所有的代码

流浪文件:

  Vagrant.require_version ">= 1.8.6"

  Vagrant.configure("2") do |config|
      config.vm.box = "ubuntu/xenial64"

      config.vm.network "forwarded_port", guest: 3000, host: 3000
      config.vm.synced_folder ".", "/var/www/", :mount_options => ["dmode=777", "fmode=666"]

      config.vm.provider "virtualbox" do |virtualbox|
        virtualbox.name = "vagrant"
        virtualbox.memory = 512
        virtualbox.cpus = 1
        virtualbox.gui = false
      end
  end

server.js

const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World\n');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

软件版本:

  • Windows 10 主页
  • 流浪者 1.8.6
  • 虚拟机 5.1.8
  • ubuntu xenial 64
  • 节点 v6.9.1

【问题讨论】:

    标签: node.js ubuntu vagrant virtualbox


    【解决方案1】:

    在 Vagrant 中运行时,地址 127.0.0.1 不一定映射到 'localhost'。删除主机名,你应该没问题:

    server.listen(port, () => {
      console.log(`Server listening ${port}/`);
    });
    

    省略the hostname defaults to 0.0.0.0

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-20
      • 2021-09-20
      • 2017-12-20
      • 1970-01-01
      • 2018-12-04
      • 1970-01-01
      相关资源
      最近更新 更多