域名解析与访问
域名如何解析到服务器、程序如何对外提供访问。访问方式由程序按服务器环境全自动判定——除个别场景外,你不需要做任何访问配置。
域名解析
到你的域名服务商(如阿里云 / 腾讯云 / Cloudflare)添加 A 记录,把域名指向服务器公网 IP。批量站群可用泛解析:
| 记录类型 | 主机记录 | 记录值 |
|---|---|---|
| A | @ 和 www | 服务器公网 IP(单站) |
| A(泛解析) | * | 服务器公网 IP(站群批量域名一次搞定) |
访问方式:全自动判定
安装时不需要选择访问方式——程序检测服务器环境后自动采用最合适的形态:
| 服务器环境 | 程序行为 |
|---|---|
| 🟢 80 端口空闲 | 域名直连:自动监听 80,装完即可 http://域名 直接访问,不带端口号 |
| 宝塔 nginx 占用 80 | 宝塔反代:程序跑在项目端口(默认 8080),在宝塔「Go 项目」里绑定域名即可,也可顺带用宝塔申请 HTTPS 证书 |
| 其它 nginx 占用 80 | 自动反代:程序只绑 127.0.0.1(不对公网开放),自动写 nginx 反代配置并 reload,失败自动回滚 |
| 80 被占且没有 nginx | 自定义端口——唯一需要你操作的场景:安装向导会请你填一个服务端口,并需要到云安全组 / 防火墙放行该端口 |
i安全组放行口诀
域名直连 / 反代 / 宝塔模式:只放行 80 和 443;自定义端口场景:额外放行你填的端口。
域名直连(80)的自动开启条件
- 同时满足三个条件才会自动开启:程序以 root 运行 + 未显式配置过端口 + 80 当前空闲;
- 80 被占用(如宝塔装了 nginx)时:不抢占、不写配置、不告警——停用 nginx 后,程序下次启动时域名直连自动生效;
- 宝塔环境装完发现只能
http://域名:8080访问:到宝塔「Go 项目 → go_fan → 设置」把「运行用户」从www改为root,保存重启;后台「系统自检 → 域名直连(80)」可核对是否生效。
HTTPS / SSL 证书
两种方式二选一:
后台「SSL 证书」页支持 ACME 免费证书批量签发(Let's Encrypt / ZeroSSL / Google 多 CA 自动轮询,DNS 或 HTTP 验证),签发后程序在 443 端口按域名自动分发证书(SNI 终结),无需手动配 nginx。到期前 30 天自动续期。详见 SSL 证书。
宝塔 Go 项目反代形态,也可以在宝塔「网站 → SSL」里为绑定的域名申请 Let's Encrypt 证书,由宝塔 Nginx 终结 HTTPS 后反代到 go_fan;两者取其一即可。
站点域名绑定
解析生效后,在后台「站点管理」添加对应域名即可——程序按请求的 Host 自动匹配站点渲染,一套程序服务任意多个域名,每个域名是内容、模板、TDK 完全隔离的独立站点。