WSL-2与VS Code:如何转发端口并实现外部网络访问?
解决WSL2中VS Code端口转发仅绑定127.0.0.1的问题
1. 修改Node.js服务器监听地址
默认情况下,Node.js的listen方法会绑定到127.0.0.1,仅允许WSL内部或本机localhost访问。要让服务器监听所有网络适配器,需要在启动服务器时指定0.0.0.0:
// 示例Express代码 const express = require('express'); const app = express(); // 将监听地址改为0.0.0.0 app.listen(3000, '0.0.0.0', () => { console.log('服务器运行在 http://0.0.0.0:3000'); });
2. 配置VS Code端口转发监听所有网卡
修改VS Code的设置,让自动/手动转发的端口绑定到所有网络接口:
- 打开VS Code设置(快捷键
Ctrl+,) - 搜索
remote.WSL.forwardPortsListenOnAllInterfaces - 将该选项设置为
true
或者直接在settings.json中添加:
"remote.WSL.forwardPortsListenOnAllInterfaces": true
完成以上两步后,你就能通过本机的DNS主机名、局域网IP甚至WSL2的虚拟IP访问Node.js服务器了。
内容的提问来源于stack exchange,提问作者Mirrana
相关产品推荐
相关产品推荐

