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

Windows环境下Roots Sage 10代理报错求助:localhost:3000代理失败

Windows下Roots Sage 10代理错误解决方法

你遇到的Error occurred while trying to proxy: localhost:3000/错误,核心原因是WSL环境与Windows系统的网络隔离,导致Bud无法正确代理到Local WP搭建的站点,结合你的配置,具体排查和解决步骤如下:

问题根源

  • WSL的localhost和Windows的localhost并非同一网络环境:你在WSL终端运行Bud,但Local WP站点部署在Windows系统中,WSL默认无法直接通过my-site.local访问Windows侧的站点。
  • 配置的监听地址限制:setUrl('http://localhost:3000')仅让Bud监听WSL本地接口,Windows浏览器访问该地址时无法正确连接到WSL内的服务。

解决步骤

1. 修改Bud配置文件

更新bud.config.js,调整监听地址和代理地址:

app
    .setUrl('http://0.0.0.0:3000') // 让Bud监听所有网络接口,允许外部访问
    .setProxyUrl('http://[Windows本地IP]/') // 替换为Windows的实际IPv4地址(可通过Windows cmd运行ipconfig查看)
    .watch(['resources/views', 'app']);

如果Local WP使用Docker容器,也可以直接用http://host.docker.internal/作为代理地址,无需手动查找IP。

2. 确保WSL能访问Windows站点

在WSL终端执行ping my-site.local,如果无法连通,修改WSL的hosts文件:

  1. 运行sudo nano /etc/hosts
  2. 添加一行:[Windows本地IP] my-site.local(替换为实际IP)
  3. 按Ctrl+O保存,Ctrl+X退出

3. 调整访问方式

运行npm run dev后,在Windows浏览器中访问http://[WSL本地IP]:3000(WSL的IP可通过终端运行hostname -I查看),或直接访问http://0.0.0.0:3000。同时确保Windows防火墙允许3000端口的入站请求。

4. 检查依赖与环境

  • 确认WSL内的Node版本符合要求:运行node -v,确保版本≥16.0.0,版本不符可通过nvm切换。
  • 重新安装依赖:删除node_modules和package-lock.json,执行npm install确保依赖完整无冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 15:35:15