如何处理多域名 SSL 证书?
处理多域名 SSL 证书通常有两种方法,取决于你的 Nginx 配置和证书类型:
-
通配符星号(*)证书:
- 一些证书供应商(如 Let’s Encrypt)提供通配符证书,允许你为多个子域名共享一个证书。只需在 Nginx 中使用
*.
前缀加上你的顶级域名(TLD),比如:ssl_certificate /path/to/*.wildcard.example.com.crt; ssl_certificate_key /path/to/wildcard.example.com.key;
- 为每个子域名设置一个单独的 server 模块,并在相应的配置中引用证书。
- 一些证书供应商(如 Let’s Encrypt)提供通配符证书,允许你为多个子域名共享一个证书。只需在 Nginx 中使用
-
多域名联合证书(Multi-Domain Certificate, SAN):
- 你也可以购买包含多个域名的 SSL 证书。这种证书通常会在证书中列出所有的域名(也称为 Subject Alternative Names, SANs)。在 Nginx 中,将这些域名直接写入证书路径即可:
ssl_certificate /path/to/combined.crt; ssl_certificate_key /path/to/combined.key; ssl_certificate_chain /path/to/combined.chain.crt;
- 再次配置每个子域名的 server,使用相同的证书链文件和私钥。
- 你也可以购买包含多个域名的 SSL 证书。这种证书通常会在证书中列出所有的域名(也称为 Subject Alternative Names, SANs)。在 Nginx 中,将这些域名直接写入证书路径即可:
无论哪种方法,记得更新 Nginx 的 server 配置,确保每个子域名都有正确的 SSL 设置,并且正确地指向共同的证书文件或其组成的文件链。