【问题标题】:create react app On Your Network with WSL2 not working在 WSL2 不工作的情况下在您的网络上创建反应应用程序
【发布时间】:2021-03-01 16:11:42
【问题描述】:

我正在尝试使用移动设备查看由 create react app 提供的应用。当我打开 CRA 的“On Your Network”推荐的 IP:PORT 时,该页面永远不会在我的移动设备上加载。

我正在使用带有 Ubuntu 的 WSL2 使用 Windows 10 笔记本电脑。我的网络都是wifi,没有以太网电缆。我的代码在 Ubuntu 文件系统上,我从带有 WSL 扩展名的 VS Code 的 WSL 终端中的同一位置运行 npm start

我可以在我的 Windows 机器(Chrome、Edge)上通过浏览器使用 http://localhost:3000 查看应用程序。

我注意到 cmd.exe ipconfig 将与“在您的网络上”对应的 IP 地址列为“以太网适配器 vEthernet (WSL)”。此 IP 地址 (172.17.144.244) 与 ipconfig 显示的“无线 LAN 适配器 Wi-Fi”(192.168.1.23) 不同。我也在我的移动设备上尝试了192.168.1.23:3000,但也没有用。

SO 上的其他一些 posts 建议删除阻止 NodeJS 应用程序的防火墙设置。我滚动浏览了防火墙设置中列出的许多应用程序,但没有发现任何 NodeJS 应用程序。

【问题讨论】:

    标签: windows create-react-app wsl-2


    【解决方案1】:

    由于 WSL2 使用虚拟 NIC,您需要在防火墙中启用端口转发,否则您在 WSL2 中的服务器将不会被网络中的外部 PC 看到。

    我建议阅读整个线程,但在简历中您可以开始使用此脚本: https://github.com/microsoft/WSL/issues/4150#issuecomment-504209723

    【讨论】:

      【解决方案2】:

      我遇到了同样的问题。因此,与其尝试重新启动 Windows,不如尝试打开 Powershell 终端,关闭 WSL,然后重新启动它。它解决了我。

      • 关闭命令:wsl --shutdown
      • 启动命令:启动:wsl

      来源:https://github.com/microsoft/WSL/issues/4885#issuecomment-803881561

      【讨论】:

        【解决方案3】:

        您可以改为在 Docker 中运行您的应用程序,并使用 Docker for Windows,为 WSL2 启用。它以某种方式管理动态动态转发端口,而无需您在 Windows 中进行任何更改。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-12-06
          • 1970-01-01
          • 2019-01-07
          相关资源
          最近更新 更多