在 WSL2 中运行时无法从浏览器访问 Express 服务器

时间:2021-06-05 16:37:25

标签: node.js express windows-subsystem-for-linux wsl-2

所以,我一直在尝试从 WSL2 内部的 3000 端口启动一个基本的 Express 服务器。每次我进入浏览器时,它都说“localhost:3000”无法访问。我不太确定问题出在哪里。我已经能够毫无问题地启动和访问在 WSL2 端口 3000 上运行的 React 应用程序。此外,我已经能够在 WSL2 中从我机器上的其他端口启动 Flask 服务器,没有问题。不知何故,这个问题似乎与 Express JS 服务器无关,这对我来说没有多大意义。

我已确认该应用程序已在所有接口上公开,因此应该可以访问 localhost。 启动应用程序时,我一直使用 netstat -ltp 对其进行监控。节点进程确实显示在输出中,这表明该端口正在侦听。

有没有我遗漏的奇怪的 WSL2 配置步骤。奇怪的是,其他不使用 Express JS 的应用程序,应用程序似乎在所有端口上都运行良好。

我也已经拥有可通过 Windows 防火墙访问的所有本地端口,并已通过以下命令在 Windows 端访问端口:netsh interface portproxy add v4tov4 listenport=3000 listenaddress=0.0.0.0 connectport=3000 connectaddress=127.0.0.x

我也一直在使用 npx express-generator your-project-name --no-view 对此进行测试,以创建标准的 Express JS 模板。

更新: 服务器可以从我网络上的 IP 地址访问,但无法从本地主机访问。

0 个答案:

没有答案