Angular 2 最终端口:4200 不适用于 ip (192.168.0.xxx:4200) 仅 localhost:4200

Angular 2 Final port :4200 not working with ip (192.168.0.xxx:4200) only localhost:4200

我正在尝试在我的其他移动设备和 PC 上测试我的 "Angular 2 Final" (1.0.0-beta.15) 应用程序,但我无法使用 192.168。0.xxx: 4200地址,只有localhost:4200...甚至在我的开发中都没有Mac。

当我使用 localhost:4200 时一切正常,问题出在 IP 版本上。

我正在从 angular beta 2.0.0-beta.6 更新,当时端口曾经是 3000。

我尝试将端口更改为 3006: 服务--端口 3006

但同样的问题。

非常感谢您的帮助!

截至版本 angular-cli: 1.0.0-beta.15

首先,localhost(或127.0.0.0)和192.168.x.y是不同的网络接口。

ng serve 启动的 node.js 服务器仅在端口 4200 上侦听 127.0.0.1(又名本地主机)。因此它不接受对您的本地网络 IP (192.168.x.y) 的请求。您可以通过 netstat 或类似的实用程序进行检查。

如果您希望 node.js 监听所有可访问的接口(又名 IP 0.0.0.0),您可以通过明确指定监听 IP 来实现ng serve --host 0.0.0.0.


我创建了一个问题,您可以跟踪它:https://github.com/angular/angular-cli/issues/2275

只需在 --host 选项中指定 IP,如 ng serve --host 192.16.1.1

现在您可以在浏览器中访问 http://192.16.1.1:4200,它会正常运行

运行 命令“ng serve --host=0.0.0.0 --disable-host-check”

这将禁用主机检查并使您的端口可以通过 IP 地址访问