我想为必须安全的站点(ssl)实现动态子域。
我可以设置对 dns api 的调用以添加子域的 A 名称,但想知道是否有人可以推荐一种添加 ssl 信息的方法(基于通配符 ssl 证书)?
所有子域都将用于名称主域。
例如。
网络服务器是 apache 服务 php。
我想为必须安全的站点(ssl)实现动态子域。
我可以设置对 dns api 的调用以添加子域的 A 名称,但想知道是否有人可以推荐一种添加 ssl 信息的方法(基于通配符 ssl 证书)?
所有子域都将用于名称主域。
例如。
网络服务器是 apache 服务 php。
主要问题是,在发送底层 http 请求之前,浏览器首先必须克服 SSL 障碍。在此阶段,将根据用于加密的证书检查主机名。因此,在网络服务器被告知所请求站点的名称之前,用户的浏览器已经看到有关证书中主机名不同的投诉。
SSL 的继任者称为 TLS,它确实具有允许您想要的功能:服务器名称指示 (SNI)。
在这些维基百科页面上阅读有关 TLS 和 SNI 的更多信息:
这是一个很好的演示站点:
在 HTTPS 上,每个 IP 不能有多个域名。不发送“主机”标头,因此服务器不知道它为 HTTPS 内容提供服务的域名 - 只是 IP 地址。
编辑:通配符证书将允许从同一 IP 向多个子域提供相同的内容,但我对您的问题的解读是,您希望为不同的子域提供不同的内容。
您可以为 CN=*.domain.com 颁发通配符证书
您可以设置通配符 dns 条目(或多个单个条目),以便 *.domain.com 转到单个 IP 地址,然后获取 *.domain.com 的通配符 SSL 证书
然后在服务器上,所有 3 个 url 将到达同一个网站,您需要在服务器端脚本中根据使用的主机名处理要显示的站点。
查看您的证书提供商提供的主题备用名称支持。
有些提供,有些不提供(Verisign 提供,但您必须通过他们的 PKI 销售渠道!)。
Digicert 可以:
http://www.digicert.com/subject-alternative-name.htm
干杯