【问题标题】:Why simple http-server not running in 127.0.0.0:8080 but in 127.0.0.1:8080?为什么简单的 http-server 不在 127.0.0.0:8080 但在 127.0.0.1:8080 中运行?
【发布时间】:2015-08-22 09:01:06
【问题描述】:

我需要使用 nodejs 运行一个简单的 http-server。我已经使用 npm 安装在我的本地仓库中。当我运行以下命令时,我收到以下消息

nodejs node-modules/http-server/bin/http-server -a 127.0.0.0
Starting up http-server, serving ./ on: http://127.0.0.0:8080

但是,服务器没有在 http://127.0.0.0:8080 上运行。我只能在屏幕上看到,网页不可用

如果我将命令更改为,

nodejs node-modules/http-server/bin/http-server -a 127.0.0.1

它在http://127.0.0.1:8080启动一个本地服务器

我不明白发生了什么。任何机构都可以帮助我了解这里发生了什么吗?

提前感谢!!

【问题讨论】:

标签: node.js httpserver


【解决方案1】:

127.0.0.0 不是有效地址。

参见this 文章。

【讨论】:

    【解决方案2】:

    首先看一下this 问题,它告诉您为什么,虽然以 .0 结尾的地址完全有效,但您应该避免使用它(提示:遗留原因)。

    再一次,节点明确告诉您服务器的启动位置,您将其发布在您的问题中:

    Starting up http-server, serving ./ on: ---> http://127.0.0.1:8080 <---

    更重要的是,127.0.0.0 不是一个环回地址,而是一个通用的(可能分配的)网络地址。另一方面,127.0.0.1 是一个环回地址,这意味着它已分配给您的计算机,并且只能从您的计算机访问。看看this维基百科的文章。

    那你能做什么?只需在 127.0.0.1 上运行您的应用程序,因为您不能(也不应该)在 127.0.0.0 上运行它。

    【讨论】:

      猜你喜欢
      • 2018-01-27
      • 2017-10-08
      • 1970-01-01
      • 2010-12-29
      • 1970-01-01
      • 1970-01-01
      • 2012-03-16
      • 2019-02-09
      • 1970-01-01
      相关资源
      最近更新 更多