云服务器资讯

反向代理多站证书怎么配?

说明如何在一台主机上为多个域名配置反向代理和 HTTPS 证书,涵盖 DNS、Nginx 站点规则、证书申请续期及常见故障排查。

一台主机承载多个网站时,通常由反向代理接收外部请求,再按域名转发到对应服务。配置的关键不是把所有域名塞进同一张证书,而是让 DNS 指向正确、代理按主机名分流、证书覆盖访问域名。下面以常见的 Nginx 配置说明国际业务主机配置反向代理与多站点证书的方法。

先确定域名和证书范围

先列出实际使用的域名,例如 example.com、www.example.com 和 shop.example.net。每个域名都要确认 DNS 记录指向代理主机的公网地址;若配置了 AAAA 记录,还要确认 IPv6 同样能到达该主机,否则部分访问者可能绕过正常的 IPv4 路径。

证书可以按站点分别申请,也可以将同一组织管理的多个域名放进一张多域名证书。前者便于分开续期和撤换,后者管理起来较集中,但证书更新会同时影响所列域名。通配符证书适合覆盖同一层级的多个子域名,但不自动覆盖根域名,且常需通过 DNS 验证。证书的 SNI 机制允许服务器在 TLS 握手时根据访问域名选择对应证书,因此多个 HTTPS 站点可以共用 443 端口。

按域名建立代理规则

国际业务主机配置反向代理与多站点证书的方法,应先让每个站点拥有独立的 Nginx 虚拟主机配置。每个配置块写明自己的 server_name、证书路径和后端地址,避免不同站点误用默认规则。

  1. 确认解析:为各域名设置 A 记录;确实提供 IPv6 服务时再配置 AAAA 记录。等待解析生效后,从外部确认域名到达代理主机。
  2. 准备后端:记录每个应用监听的地址和端口,例如本机的 127.0.0.1:3001 与 127.0.0.1:3002。后端端口不必直接暴露公网。
  3. 配置 HTTP 分流:为每个域名建立监听 80 的 server 块,匹配 Host 后转发至对应后端,或先跳转到 HTTPS。转发时通常应设置 Host 为 $host,并传递 X-Forwarded-For 与 X-Forwarded-Proto,便于应用识别原始访问信息。
  4. 申请证书:使用支持 ACME 的客户端为域名申请证书。HTTP-01 验证通常要求外部能够访问 80 端口;DNS-01 则需按提示添加 TXT 记录,适用于无法开放 80 端口或申请通配符证书的场景。
  5. 启用 HTTPS:在对应的 443 server 块中配置证书文件和私钥文件,再设置同样的域名匹配与后端转发规则。不要把私钥放在公开可下载目录中,并限制其读取权限。
  6. 检查并重载:运行 Nginx 配置检查命令 nginx -t,通过后再重载服务。逐个访问域名,确认页面内容、证书域名和跳转结果都正确。

续期与排错重点

证书不是一次配置后永久有效。确认 ACME 客户端的自动续期任务已启用,并在续期成功后让 Nginx 重新读取证书;可用客户端提供的模拟续期功能检查流程。若续期失败,优先检查域名解析是否仍指向代理、验证所需端口是否可达,以及 DNS-01 的 TXT 记录是否填入正确位置。

遇到证书错配,检查浏览器访问的域名是否写入对应 server_name,以及客户端是否发送了正确的 SNI。遇到跳到了其他网站,检查 Nginx 是否命中默认站点、域名是否重复配置。若应用生成了错误的 HTTP 链接,核对 X-Forwarded-Proto 是否传递,并确认后端应用信任来自代理的转发头。

配置选择与适用情况

站点数量少、域名归属不同或需要独立维护时,分别申请证书通常更容易排查;多个域名由同一团队统一管理,且希望减少证书文件数量时,可评估多域名证书。选择前应考虑续期流程、域名变更频率和私钥管理,不要只按证书数量判断。

总的来说,国际业务主机配置反向代理与多站点证书的方法可以概括为:先核对 DNS,再按域名配置代理和证书,最后验证续期及访问路径。每个域名逐项测试,比一次性修改所有站点更容易发现问题。

常见问题

多个网站可以共用一个 IP 和 443 端口吗?

可以。服务器根据 TLS 握手中的 SNI 和后续 HTTP 主机名区分站点,前提是各域名配置匹配且证书覆盖访问域名。

每个站点都必须单独申请证书吗?

不必须。可使用分别签发的证书,也可使用覆盖多个域名的证书;选择时应考虑独立续期、管理便利和域名变更影响。

申请证书时一定要开放 80 端口吗?

不一定。HTTP-01 验证通常需要 80 端口可访问;DNS-01 通过 DNS 记录验证,具体要求取决于证书客户端和验证方式。

证书显示有效,但访问时仍出现安全警告怎么办?

检查证书是否包含当前访问的完整域名、Nginx 是否命中正确站点,以及证书链是否配置完整。也要确认浏览器访问的域名与地址栏一致。

需要选择适合业务的方案?

告诉我们业务地区、配置和预算,客服可协助推荐产品。

相关文章