WiFi调试时手机访问不了本地开发服务器怎么办?

技术雨鑫 阅读 12

我用的是Mac,开了本地的Vite开发服务器(localhost:5173),电脑和手机连的是同一个WiFi。在手机浏览器里输入电脑的局域网IP加端口(比如192.168.1.10:5173),结果打不开页面,提示连接超时。防火墙也关了,Vite也配置了host: ‘0.0.0.0’,但还是不行。

这是我的index.html,很简单,就一个测试元素:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <title>Test Page</title>
</head>
<body>
  <h1>Hello from local dev server!</h1>
</body>
</html>
我来解答 赞 2 收藏
二维码
手机扫码查看
1 条解答
码农玉惠
这个问题我之前也遇到过,通常是这几个地方没配置对。

先检查一下Vite的配置文件 vite.config.js,确保 server 配置是这样的:

import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'

export default defineConfig({
plugins: [react()],
server: {
host: '0.0.0.0',
port: 5173
}
})


配置没问题的话,试试在命令行启动时直接加参数:

vite --host --port 5173


或者用 npm run dev 的话,先看下 package.json 里的 dev 脚本怎么写的,改成:

"dev": "vite --host"


Mac防火墙这块,光在设置里关可能不够。你去系统设置 → 隐私与安全性 → 防火墙,彻底关掉。如果还是不行,试试在终端执行:

sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off


输完密码重启一下。

另外确认下你用的IP地址是对的,在终端敲 ifconfig | grep inet 找那个 192.168.x.x 的地址。

还有一点,有时候Vite新版本需要额外配置允许所有主机访问,加一下 server: { host: '0.0.0.0', allowedHosts: 'all' } 试试。

这些都试一遍基本就能通了。
点赞
2026-03-13 18:01