很多人以为把域名指向计算实例的公网地址就完成了配置,实际上,计算实例如何绑定域名涉及至少四个环节:域名解析、实例安全组、应用监听端口,以及Web服务器对域名的识别。任一环节不匹配,都可能出现域名打不开、访问到错误站点或HTTPS证书不通过。
先理解域名与计算实例的对应关系
以运行Ubuntu 22.04和Nginx的实例为例,用户访问www.example.com时,浏览器先通过DNS解析获得公网IPv4地址,然后向该地址的80或443端口发起请求。Nginx再根据请求中的Host信息,把请求转发给对应的网站或应用。

如果应用实际监听的是3000端口,DNS本身不会把请求自动转到3000端口。此时应让Nginx监听80、443端口,再通过反向代理把请求转发到本机的3000端口;或者在地址中显式写出端口,但后者不适合作为常规网站入口。
计算实例如何绑定域名:可执行配置步骤
- 确认公网地址。在云平台控制台查看实例的公网IPv4,并确认它是固定公网地址。若实例重启后地址可能变化,应使用云平台提供的弹性公网IP,或重新更新解析记录。
- 添加DNS解析。在域名服务商的解析控制台添加A记录,将主机记录填写为@或根域名,将记录值填写为实例公网IPv4。再为www添加一条A记录,或在www上使用CNAME记录指向根域名。
- 放行网络端口。在云平台安全组和实例系统防火墙中允许TCP 80、443端口。只开放3000端口并不能让普通域名直接访问Nginx入口。
- 配置Nginx站点。设置server_name为实际域名,并将请求转发到应用监听地址,例如http://127.0.0.1:3000。配置完成后先执行nginx -t检查语法,再重新加载Nginx。
- 验证解析和访问。使用nslookup或dig检查返回地址是否正确,再用浏览器访问HTTP地址。解析记录修改后,生效时间通常从数分钟到数小时不等,具体取决于递归DNS缓存。
- 配置HTTPS。确认HTTP访问正常后,再为根域名和www域名申请证书,并在443站点中配置证书文件。若证书只覆盖其中一个域名,另一个域名访问时仍会出现证书名称不匹配。
三种解析配置怎么选
| 配置方式 | 适用场景 | 优点 | 限制 |
|---|---|---|---|
| A记录 | 域名直接指向固定IPv4实例 | 直观,兼容性好,排错简单 | 公网地址变化后必须修改记录 |
| AAAA记录 | 实例具备可用的固定IPv6地址 | 支持IPv6访问 | 安全组、系统和网络环境都要完整支持IPv6 |
| CNAME记录 | 子域名指向另一个域名或云服务入口 | 目标地址变化时无需逐个修改IP | 通常用于子域名,不能简单替代根域名的所有配置 |
如果实例只有稳定IPv4,A记录通常是最清晰的选择;如果同时提供IPv6,才考虑增加AAAA记录。不要仅因控制台提供IPv6选项就盲目添加,因为部分网络会优先尝试IPv6,若IPv6链路不通,用户可能表现为间歇性打不开。
最容易踩到的四个误区
解析已经生效,就一定能打开网站
解析只负责找到地址,不负责启动服务。即使dig返回了正确IP,Nginx未运行、安全组未放行、应用只监听本机其他端口,仍然无法访问。
根域名和www可以只配一个
example.com与www.example.com是两个主机名。若希望二者都能访问,应分别配置A记录,或让www使用CNAME指向根域名,再在Nginx中同时声明两个域名并决定是否统一跳转。
应用端口就是网站端口
Node.js、Python或Java应用常使用3000、8000等端口,但用户习惯访问的是80和443。生产环境通常由Nginx承担公网入口,再以反向代理连接内部应用,应用端口不必直接暴露在公网。
先申请证书再排查解析
多数证书签发流程需要验证域名控制权。若域名还没有正确解析到实例,或80端口无法完成验证,证书申请可能失败。更稳妥的顺序是先完成解析和HTTP访问,再配置HTTPS。
排查顺序比反复改记录更重要
出现问题时,先检查域名返回的IP是否为当前实例,再确认安全组和系统防火墙是否开放80、443端口;随后检查Nginx进程、站点配置和应用监听端口。若能通过IP访问但域名访问到错误页面,重点查看server_name和请求主机名;若HTTP正常而HTTPS失败,则检查证书覆盖范围、443监听和证书链。
总的来说,计算实例如何绑定域名不能只看解析控制台,而要把“域名指向哪一个地址、入口监听哪个端口、哪个服务处理请求、证书覆盖哪些名称”逐项对应起来。按照这条链路配置,通常比反复切换A记录和CNAME记录更容易定位问题。
常见问题
域名解析到实例后需要等待多久?
新记录通常可能在数分钟内被部分网络看到,但受缓存影响,完全传播可能需要更长时间。修改前的TTL和本地递归DNS缓存都会影响结果。
可以直接把域名指向3000端口吗?
不可以通过DNS记录指定端口。应使用Nginx等反向代理监听80或443,再转发到3000端口,或在URL中显式写端口。
一个实例能绑定多个域名吗?
可以。多个域名可以解析到同一公网地址,再由Nginx按域名分别配置站点;如果使用HTTPS,还要确保每个域名都被证书覆盖。
实例公网IP变化后怎么办?
重新把A记录改为新地址,并检查安全组、证书和Web服务配置。更稳定的做法是使用不会随实例生命周期变化的弹性公网IP。

2026-09-22
2026-09-22
2026-09-22
2026-09-22
2026-09-22
2026-09-22