无法在移动端访问React-Vite应用,求助排查(Linux EndeavourOS环境)
解决Vite React应用移动端本地网络访问问题
问题核心
Vite默认仅绑定IPv6地址(对应tcp6端口类型),而多数移动端设备在本地网络中使用IPv4协议,直接访问生成的IPv6链接会失败;至于MongoDB的提示,是因为你用HTTP访问了它的驱动专用端口,属于正常现象,和Vite的访问问题无关。
具体解决步骤
修改Vite配置,强制监听IPv4
在项目根目录的vite.config.js或vite.config.ts中添加服务器配置,指定绑定0.0.0.0(同时兼容IPv4和IPv6):export default { server: { host: '0.0.0.0', port: 5173 // 可保留默认端口或自定义 } }配置后Vite会同时开启
tcp(IPv4)和tcp6端口,满足移动端的访问需求。获取本地IPv4地址
在Linux终端执行以下命令,提取本地IPv4:ip addr show | grep inet | grep -v inet6 | grep -v 127.0.0.1输出示例:
inet 192.168.3.105/24 brd 192.168.3.255 scope global wlan0,其中192.168.3.105就是你的本地IPv4。移动端访问验证
确保手机和电脑在同一Wi-Fi网络下,打开浏览器输入http://你的本地IPv4:5173(比如http://192.168.3.105:5173)即可访问Vite应用。防火墙端口放行
如果仍无法访问,检查EndeavourOS防火墙是否放行Vite端口:- 若使用ufw:
sudo ufw allow 5173/tcp - 若使用firewalld:
sudo firewall-cmd --add-port=5173/tcp --permanent sudo firewall-cmd --reload
- 若使用ufw:
关于MongoDB提示的说明
你遇到的MongoDB提示是正常逻辑:MongoDB默认端口27017是供数据库驱动连接的专用端口,并非HTTP服务端口,不能直接用浏览器访问。如果需要通过HTTP管理MongoDB,需额外启用其HTTP接口(不建议生产环境使用),但这和你的Vite测试需求无关。
内容的提问来源于stack exchange,提问作者Adithya
相关产品推荐
相关产品推荐

