一个用于多个站点的SSL证书 – CentOs 5 Apache 2.2

我可以为使用同一个IP地址的同一个VPS托pipe的两个域使用单个证书吗?

使用NameVirtualHost指令:

NameVirtualHost *:443 

定义你的虚拟主机:

 <VirtualHost *:443> ServerName www.studyhat.blogspot.com DocumentRoot "/opt/apache22/htdocs/siteA" SSLCertificateFile "/path/to/my/cert" SSLCertificateKeyFile "/path/to/my/key" </VirtualHost> <VirtualHost *:443> ServerName www.studyhat.wordpress.com DocumentRoot "/opt/apache22/htdocs/siteB" SSLCertificateFile "/path/to/my/cert" SSLCertificateKeyFile "/path/to/my/key" </VirtualHost> 

对的,这是可能的。 这被称为统一通信证书。 参考这个维基百科文章 。

正如在这个答案中详细说明,你基本上得到3个选项:

  • 使用通配符证书:为*.example.com发布的证书,可以匹配www1.example.comwww2.example.com 。 注意*.example.com将不匹配example.com 。 另外,他们的使用通常是不鼓励的(参见RFC 6215)。
  • 使用具有多个“主题备用名称”条目的证书。 每个主机应该有一个条目。 这通常得到广泛的支持。 他们如何被称为商业将取决于CA(他们有时被称为UCC)。
  • 通过服务器名称指示扩展使用多个证书(允许您具有不同的ServerNameSSLCertificateconfiguration的多个VirtualHost *:443 )。 Windows XP上任何版本的IE都不支持此function,也可能导致某些移动浏览器出现问题。