【问题标题】:Angular 4 Failed to load resource: net::ERR_CONNECTION_REFUSEDAngular 4 无法加载资源:net::ERR_CONNECTION_REFUSED
【发布时间】:2018-04-08 21:14:37
【问题描述】:

我想我会从我的申请开始。

我正在制作一个完整的平均堆栈应用程序,我希望它在 docker 中运行。要使用 docker,我使用的是带有 Ubuntu 的 virtualbox。当我运行 docker-compose 时,一切都在 localhost:4200 上运行。现在我想在我的主机(Windows 7)上打开我的应用程序。 当我通过(ip 地址应该保密,对吗?) xxx.xxx.xx.xxx:4200/login 访问我的应用程序时,页面看起来不错,但出现以下错误:

我正在使用 Angular cli 1.4.1 和节点 8.4.0

为什么会出现这些错误以及如何修复它们?

我的 docker-compose

【问题讨论】:

  • 是 xxx.xxx.xxx.xxx 127.0.0.1 吗?看来您只在一个接口(xxx.xxx.xxx.xxx)上收听,而不是 127.0.0.1。您的撰写文件会很有帮助(尤其是 ports 部分。
  • @n00dl3 我添加了我的compose文件,ip不是127.0.0.1
  • 这是在你的本地机器上运行的吗?
  • 它正在我的虚拟机中运行
  • 那么您的应用程序没有在本地主机上运行,​​您应该对 xxx.xxx.xxx.xxx 进行 http 调用,而不是本地主机。 js 在你的主机内部解释,你主机的 localhost 是它的 127.0.0.1 IP,而不是你的服务器运行的 xxx.xxx.xxx.xxx。

标签: node.js angular virtualbox


【解决方案1】:

您正在侦听端口4200 的服务器正在侦听您的xxx.xxx.xxx.xxx 接口(不必隐藏局域网IP,但没关系...)。

您的 Angular 应用程序正在您的主机系统上运行。 localhost 是您的主机系统的本地主机,而不是来宾。所以你有两个解决方案:

  • 将 Angular 应用程序中的 url 更改为指向 xxx.xxx.xxx.xxx:4200 而不是 localhost:4200
  • 使用 virtual box 将 4200 端口从主机转发到客户系统:
    1. 关闭来宾。
    2. 选择客人并点击settings
    3. 转到网络标签。
    4. 点击“高级”
    5. 然后选择“端口重定向”并将主机 127.0.0.1:4200 绑定到访客的 4200 端口

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-15
    • 2015-04-02
    • 1970-01-01
    • 2021-10-14
    • 1970-01-01
    • 2014-12-17
    相关资源
    最近更新 更多