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

AWS EC2部署Node.js API后本地curl正常公网访问超时如何解决

问题核心原因

你当前在公网浏览器访问的是EC2实例的私网IP(172.31.17.178),该IP仅能在AWS同VPC的内部网络中被访问,公网环境下无法路由到该地址,这是导致超时的最直接原因。你需要替换为实例的公网IPv4地址访问:http://18.221.231.202:3002。

如果更换公网IP后仍无法访问,可以按以下步骤逐一排查:

  • 检查Node.js服务监听地址
    不要让服务仅监听本地回环地址127.0.0.1,需配置为监听所有网卡地址0.0.0.0,修改app.js中监听代码为类似格式:
    app.listen(3002, '0.0.0.0', () => {
      console.log('服务运行在3002端口')
    })
    
    可在实例中执行命令sudo netstat -tunlp | grep 3002验证监听地址,如果返回结果中地址为127.0.0.1:3002则说明监听配置错误。
  • 核对AWS安全组入站规则
    确认安全组入站规则中已添加允许TCP 3002端口的规则,源地址配置为0.0.0.0/0(允许所有公网IP访问)或者你当前本地设备的公网IP,避免仅配置了出站规则漏了入站规则。
    AWS security groups
  • 验证Ubuntu防火墙配置
    执行命令sudo ufw status确认3002端口的入站规则为ALLOW,没有限制访问源IP。
    PM2, Ubuntu Firewall
  • 排查本地网络限制
    部分公司内网、VPN会限制非常规端口的出站访问,可尝试切换手机热点访问测试,或在本地执行命令telnet 18.221.231.202 3002验证端口连通性。

验证通过后你就可以在公网正常调用API,效果和本地测试一致:
本地计算机API HTTP测试

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 04:51:00