域名解析前的准备工作
在为 Gogs 配置域名之前,需确保 Gogs 服务已正常运行且可通过局域网 IP 访问,登录 Gogs 服务器,打开 Gogs 的配置文件 custom/conf/app.ini(若不存在可复制 conf/app.ini.example 并重命名),检查 server 部分的配置项,确保 HTTP_ADDR 和 HTTP_PORT 设置正确(默认为 0.0.0:3000,允许任意 IP 访问),保存文件后重启 Gogs 服务,确保服务监听在指定端口。

修改 Gogs 的配置文件
在 app.ini 中添加域名相关配置,在 [server] 部分新增以下两项:
DOMAIN = yourdomain.com(替换为你的实际域名)ROOT_URL = http://yourdomain.com/(需与域名完全匹配,末尾斜杠不可省略)
若需启用 HTTPS,需提前获取 SSL 证书(可通过 Let’s Encrypt 免费获取),并在配置中添加:
CERT_FILE = /path/to/cert.pemKEY_FILE = /path/to/key.pem
同时将ROOT_URL修改为https://yourdomain.com/,保存文件后重启 Gogs 服务,使配置生效。
配置 DNS 解析
登录域名管理控制台,添加一条 A 记录或 CNAME 记录。
- A 记录:将域名指向 Gogs 服务器的公网 IP,类型选择
A,主机记录填 或子域名(如git),记录值填服务器公网 IP。 - CNAME 记录:若使用二级域名(如
git.yourdomain.com),可添加 CNAME 记录,主机记录为git,记录值为yourdomain.com(需确保主域名已解析)。
保存 DNS 配置后,等待 DNS 生效(通常为几分钟至几小时),可通过 ping yourdomain.com 验证域名是否指向正确 IP。

服务器防火墙与端口设置
确保服务器的防火墙允许域名对应的端口访问(默认 HTTP 为 80,HTTPS 为 443),以 Linux 为例,使用以下命令开放端口:
sudo ufw allow 80/tcp sudo ufw allow 443/tcp
若 Gogs 运行在非标准端口(如 3000),需同时开放该端口,并通过 Nginx 或 Apache 反向代理将 80/443 端口请求转发至 3000 端口。
反向代理配置(可选)
为提升安全性和兼容性,建议使用 Nginx 作为反向代理,编辑 Nginx 配置文件(如 /etc/nginx/sites-available/gogs),添加以下内容:
server {
listen 80;
server_name yourdomain.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
启用配置后,重启 Nginx 服务:sudo systemctl restart nginx,若启用 HTTPS,可进一步配置 SSL 证书路径和重定向规则。

验证域名配置
完成上述步骤后,在浏览器中访问 http://yourdomain.com,若能正常显示 Gogs 登录页面,则域名配置成功,若出现连接问题,可检查 Gogs 服务日志、防火墙规则及 DNS 解析状态,确保各环节配置无误。
通过以上步骤,即可为 Gogs 绑定域名,实现通过自定义域名访问 Git 仓库,提升服务的专业性和易用性。