同一WiFi下无法跨设备连接Express服务器的问题求助
解决同一WiFi下无法访问Express服务器的建议
修正监听配置
将app.listen的地址改为0.0.0.0,确保服务器监听所有网络接口,同时确认本机WiFi的实际IP(不要用192.168.137.1,这通常是Windows热点的默认IP,而非WiFi网卡的IP)。修改后的代码:const express = require('express') const path = require('path') const app = express(); app.use(express.static("chess_game")); app.get('/' , (req , res) => { console.log("get request") res.sendFile(path.join(__dirname, 'chess_game', 'index.html')); }) app.listen(80 ,'0.0.0.0' ,() => console.log("listening on port 80..."));验证端口监听状态
- Windows系统打开命令提示符,执行:
netstat -ano | findstr ":80",确认有node.exe进程在监听0.0.0.0:80或本机WiFi IP的80端口。 - Linux/macOS打开终端,执行:
lsof -i :80或netstat -tulpn | grep :80,检查监听状态是否正常。
- Windows系统打开命令提示符,执行:
修复文件路径问题
原代码中res.sendFile使用相对路径可能导致文件找不到,改用绝对路径避免路径解析错误,如上面代码中引入path模块并使用path.join拼接路径。排查网络连通性
- 在其他设备上执行
ping 你的本机WiFiIP,如果无法ping通,说明同一WiFi网络存在隔离或路由问题。 - 若ping通,直接在设备浏览器访问
http://你的本机WiFiIP,如果仍无法访问,检查设备自身的防火墙或浏览器代理设置。
- 在其他设备上执行
检查路由器设置
进入路由器管理后台,查看是否开启了AP隔离(又称客户端隔离)功能,该功能会阻止同一WiFi下设备互相访问,需关闭此选项;同时确认路由器没有拦截80端口的规则。
内容的提问来源于stack exchange,提问作者omershafrir
相关产品推荐
相关产品推荐

