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

无法在绑定AWS EC2的GoDaddy域名上运行Gin Gonic服务器

问题排查与解决方案

以下是针对Gin Gonic应用无法通过域名访问的具体排查和解决步骤:

  • 检查AWS EC2安全组规则
    确认EC2实例的安全组已开放8083端口的TCP入站流量,来源范围设置为0.0.0.0/0(允许所有外部访问)或指定IP。Flask的8000端口可正常访问说明该端口已开放,但8083端口可能未添加对应规则。

  • 验证端口监听状态
    在EC2实例上执行命令,确认Gin应用是否正确监听0.0.0.0:8083:

    netstat -tulpn | grep 8083
    

    或

    ss -tulpn | grep 8083
    

    如果结果显示监听地址为127.0.0.1:8083,则应用仅允许本地访问,外部无法连接。

  • 确认证书文件有效性与路径

    • 检查Gin代码中fullchain.pem和privkey.pem的路径是否正确,建议使用绝对路径(如/home/ubuntu/certs/fullchain.pem)避免相对路径问题。
    • 验证证书文件权限,确保运行Gin的用户拥有读取权限,可执行chmod 644 fullchain.pem privkey.pem调整权限。
    • 确认证书与Flask使用的是同一有效文件,避免证书过期或格式错误。
  • 排查EC2本地防火墙

    • 若实例使用Ubuntu,执行ufw status查看防火墙规则,确认8083/tcp已开放;未开放则执行ufw allow 8083/tcp添加规则。
    • 若使用CentOS/RHEL,执行firewall-cmd --list-ports检查,未开放则执行firewall-cmd --add-port=8083/tcp --permanent并重启防火墙。
  • 验证Gin路由配置
    确认已正确定义/2路由,示例代码如下:

    router.GET("/2", func(c *gin.Context) {
        c.JSON(200, gin.H{
            "status": "success",
            "data": "test content",
        })
    })
    

    路由未定义会导致404,但如果连连接都无法建立,优先排查网络层面问题。

  • 本地测试应用可用性
    在EC2实例内部执行:

    curl https://localhost:8083/2
    
    • 若能正常返回内容,说明应用本身无问题,故障出在外部网络链路;
    • 若本地访问失败,检查Gin启动日志,确认是否存在证书加载失败、端口被占用等报错。
  • 检查端口占用情况
    执行命令查看8083端口是否被其他进程占用:

    lsof -i :8083
    

    若存在占用进程,可终止该进程或更换Gin监听端口。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 22:01:16