You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

webpack-dev-server v4 配合ngrok实现热重载的正确配置方案问询

webpack-dev-server v4 配合 ngrok 运行的完整解决方案

你之前仅配置webSocketURL.hostname的方案缺少两项关键配置,才会导致websocket连接失败、热重载失效,完整可用的配置如下:

// WDS v4 完整配置
devServer: {
  // 放行ngrok域名,绕过WDS默认的host访问校验
  allowedHosts: ['react-tunnel.ngrok.io'],
  client: {
    webSocketURL: {
      hostname: 'react-tunnel.ngrok.io',
      // ngrok的https隧道对应wss协议,若使用http隧道则修改为ws
      protocol: 'wss',
      // ngrok https服务默认对外端口为443,无需填写本地WDS启动端口
      port: 443,
    },
  },
  // 其余原有devServer配置保持不变
}

各关键配置的作用说明:

  • allowedHosts:WDS v4 默认开启host访问校验,仅允许本地地址访问,必须主动将ngrok域名加入放行列表,否则所有从ngrok转发的请求都会被直接拦截。如果是临时使用免费版ngrok,每次生成的域名不固定,可直接设置allowedHosts: 'all'关闭校验,适配本地开发测试场景。
  • webSocketURL.protocol:需要和ngrok隧道的协议对应,https隧道用wss,http隧道用ws,不填的话WDS会默认沿用本地启动的协议配置,和ngrok协议不匹配就会导致websocket连接失败。
  • webSocketURL.port:需要填写ngrok对外暴露的端口,默认https隧道为443,不要填写本地WDS的启动端口。

内容的提问来源于stack exchange,提问作者wentjun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 11:45:02