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

Mac OS本地代理出现connect ECONNREFUSED ::1:3000问题求助

问题解决方案

核心原因分析

报错connect ECONNREFUSED ::1:3000说明代理在尝试通过**IPv6地址(::1)**连接3000端口,但你的React应用可能只监听了IPv4的127.0.0.1,未监听IPv6地址。Mac系统默认优先将localhost解析为IPv6的::1,导致连接失败;而Ubuntu和Windows的localhost解析优先级或应用监听配置与Mac不同,因此能正常运行。

解决方法

  • 修改React应用的监听地址
    在create-react-app的启动命令中强制指定IPv4地址:

    HOST=127.0.0.1 npm start
    

    也可在项目根目录的.env文件中添加配置:

    HOST=127.0.0.1
    

    这样应用会绑定到127.0.0.1,代理请求时可通过IPv4正常连接。

  • 调整代理服务器的目标地址
    无需改动React应用配置,直接将代理的目标地址从localhost:3000改为127.0.0.1:3000,强制代理使用IPv4发起请求,绕开Mac的IPv6解析优先级问题。

  • 修改Mac的localhost解析优先级
    编辑/etc/hosts文件,确保127.0.0.1排在::1之前:

    127.0.0.1       localhost
    ::1             localhost
    

    保存后刷新DNS缓存:

    sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
    

    此方法会让系统优先将localhost解析为IPv4地址,适用于所有依赖localhost解析的场景。

验证步骤

修改完成后,重启React应用和代理服务器,再次请求localhost:4000/,确认是否正常返回index.html文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 07:05:20