我正在调查 SSL 设置,Chrome 说证书有问题,subdomain.subdomain.domain.com
但如果我访问该 URL,我会收到“证书无效”警告。但是,如果我直接访问“子域”,证书就会被接受。我不能 100% 确定你如何设置一个没有“.com/org”等的网站,更不用说让 SSL 以这种方式工作了。有人对如何设置/实现这一点有任何想法/经验吗?
答案1
subdomain.subdomain.domain.com
有点令人困惑。Unifying 可能有助于解释:
子域名是最右边的点左边的所有部分。只有最右边的部分(com
)才不是子域名。它是顶级域名 (TLD)。
术语:
subsubdomain.subdomain.domain.com
| | | |
| | | \---> TLD: Top Level Domain
| | \--------> SLD: 2nd/Second Level Domain
| \-----------------> 3rd/Third Level Domain
\---------------------------> 4th/Fourth Level Domain
每个证书仅针对一个 CN 颁发(通用名称)。
如果 CN 是三级域名subdomain.domain.com
,Chrome 将只能使用此域名运行而不会出现错误。
每个额外的子域名都需要添加为替代名称否则您将收到错误。一个常见的用例是www.
子域名,它被添加为替代名称。
可以添加多个域名。可以为 mydomain.net (CN) 获取包含多个备用名称的证书,例如:www.mydomain.net
、、smtp.mydomain.net
my-other-domain.com
和www.my-other-domain.com
如上所述,备用名称不必属于同一个“域”。
通配符证书*.google.com
是另一种选择,无需将“您的所有域名”传播给公众。每张颁发证书的数据将对所有人开放。(例如 %.google%.com解析 google、googlemail、googleapis……)
答案2
实际情况是,我们有一个用于“subdomain”的自签名证书和一个用于“subdomain.subdomain.domain.tld”的公共/ca 签名证书。我们使用的是自签名证书。当我切换到公共证书时,只有正确的 URL 才适用于 SSL。