◆

WebStorm 无法通过 IP 访问运行的 HTML 页面

2023-02-02 01:370

在 WebStorm 里右键 HTML 文件选 Run,它会启动一个内置的轻量 Web 服务器,用 http://localhost:63342/项目名/index.html 打开页面。本机看没问题,但想拿手机或者局域网里另一台机器用 http://192.168.x.x:63342/... 访问时就打不开了,浏览器直接被拒绝连接。

原因是这个内置服务器默认只允许来自 localhost 的请求,属于安全策略,不是端口没开。这篇记的是放开这个限制的设置位置,配好之后就能用真机调试移动端页面了。

设置位置

打开设置面板,进入 Build, Execution, Deployment → Debugger,看 Built-in server 分组里的两项:

  1. Port:内置服务器端口,默认 63342,可以改成别的,改完记得同步改访问地址。
  2. Can accept external connections:这就是关键开关,勾上之后内置服务器才会监听非 localhost 的请求,局域网内其他设备才能访问。

同一分组下还有个 Allow unsigned requests,它控制的是不带 IDE 令牌的请求能否直接放行。不勾的话,外部访问时 URL 需要带上 ?_ijt=xxx 令牌参数,或者浏览器会弹一个确认页让你点「允许」,用真机测试时勾上会省事很多。

下图是这个面板,重点看 Built-in server 分组里 Can accept external connections 的勾选状态和上方的端口号。

WebStorm 设置面板 Build, Execution, Deployment - Debugger 中内置服务器端口与允许外部连接选项

注意事项

  1. 勾选后局域网内任何设备都能访问你的项目文件,在公共 Wi-Fi 下别开着,用完记得取消勾选。
  2. 还打不开的话检查系统防火墙:macOS 在「系统设置」→「网络」→「防火墙」里放行 WebStorm,Windows 需要在防火墙里给对应端口开入站规则。
  3. 手机和电脑必须在同一网段,用电脑的局域网 IP(ifconfig / ipconfig 查)而不是 127.0.0.1。
  4. 内置服务器只适合静态页面调试,正经开发前端项目还是用 Vite、webpack-dev-server 这类带热更新的工具,它们的 host 配置也需要设成 0.0.0.0 才能被外部访问。
💬留言板0

还没有留言,来发表第一条吧~

PAGE LOAD / LIVEWebStorm 无法通过 IP 访问运行的 HTML 页面加载中