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

Go Gin服务部署至GoDaddy生产服务器后无法访问求助

问题排查与解决方案

针对你在GoDaddy cPanel部署Go Gin服务遇到的域名访问路由404问题,按以下步骤逐一排查:

1. 修正Gin应用的绑定地址

本地测试时用localhost:8080仅允许服务器内部访问,外部请求无法进入。修改启动代码,将应用绑定到服务器的所有网卡:

r.Run("0.0.0.0:8080") // 替换原有的 r.Run() 或 r.Run("localhost:8080")

重新编译适配amd64 Linux的二进制文件,上传后重启服务。

2. 配置cPanel反向代理(核心步骤)

GoDaddy服务器默认由Apache/Nginx监听80/443端口,你的Gin服务运行在8080端口,需要通过反向代理将域名请求转发到8080:

  • 登录cPanel,找到反向代理管理器
  • 添加规则:
    • 来源URL:填写/(表示整个域名的所有请求)
    • 目标URL:填写http://127.0.0.1:8080
    • 保存并启用规则
  • 排查.htaccess文件冲突:临时重命名网站根目录的.htaccess文件,测试是否能正常访问路由。若恢复正常,再调整该文件中的重写规则,避免覆盖反向代理配置。

3. 验证服务器内部访问是否正常

通过SSH执行命令,确认Gin服务本身能正常响应:

curl http://127.0.0.1:8080/register_license
  • 若返回正确内容:说明应用无问题,问题出在反向代理或域名路由配置
  • 若返回404:检查Gin的路由代码是否正确,或编译时是否遗漏了路由逻辑

4. 确保应用后台稳定运行

直接通过SSH启动的进程会在连接断开后终止,需让服务后台运行:

nohup ./你的Gin应用二进制文件名 > app.log 2>&1 &

用以下命令检查进程状态:

ps aux | grep 你的Gin应用二进制文件名

5. 核对静态文件与模板路径

本地相对路径在服务器上可能失效,可在代码中打印当前工作目录确认:

wd, _ := os.Getwd()
fmt.Println("当前工作目录:", wd)

确保模板文件、style.css等资源的路径与代码中指定的一致,比如代码用r.LoadHTMLGlob("templates/*"),则服务器应用目录下必须存在templates文件夹并包含对应模板。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 17:18:18