当我从WSL2(Ubuntu 20.04)运行“ ng serve”时,我可以通过浏览到http:// localhost:4200从Windows 10主机访问angular应用程序。
有人可以解释这是怎么可能的吗?我知道WSL2正在作为具有自己IP地址的虚拟机。 Windows 10主机如何使用“ http:// localhost:4200”访问WSL2上的angular应用程序?
另一方面,当我从WSL2运行tomcat时,无法使用“ http:// localhost:8080”从Windows访问tomcat应用程序。
预先感谢 保罗
答案 0 :(得分:1)
我遇到了类似的问题:默认的 React 服务器运行良好,但 Tomcat 服务器即使运行在同一端口上也不会。 Dudi Boy's answer 建议在较旧的 WSL 版本上使用特定 IP,但这对我没有太大帮助,因为我使用的是较新版本。但是,他的链接包含另一个有用的建议
<块引用>当使用远程 IP 地址连接到您的应用程序时,它们将被视为来自 局域网 (LAN)。这意味着您需要制作 确保您的应用程序可以接受 LAN 连接。
例如,您可能需要将您的应用程序绑定到 0.0.0.0
而不是 127.0.0.1
。在使用 Flask 的 Python 应用程序示例中,
这可以通过以下命令完成:app.run(host='0.0.0.0')
。请
在进行这些更改时请记住安全性,因为这将允许
来自 LAN 的连接。
果然,当我让我的服务器在 0.0.0.0
而不是 127.0.0.1
上运行时,它起作用了!
答案 1 :(得分:0)
Microsoft.Azure.Cosmos.Table
取决于Windows 10版本的假设。
也请阅读此article。它说明了原因和方式。
如果您要构建联网应用程序(例如,在 Linux发行版中的NodeJS或SQL服务器),则可以访问它 从Windows应用(例如Edge或Chrome互联网浏览器)使用 本地主机(就像通常一样)。
但是,如果您运行的是Windows的旧版本(内部版本18945 或更少),则需要获取Linux主机VM的IP地址(或 更新到最新的Windows版本。