我们用apache和php运行cent os,plesk,mysql。 大约有25个站点,每个站点现在都需要SSL证书。 主机在同一台服务器上的IP不能超过16个。 是否有可能让所有这些网站只使用一个IP地址并为每个站点设置SSL证书?
如果是,请告诉我如何设置。
谢谢
您可以使用SNI技术http://en.wikipedia.org/wiki/Server_Name_Indication执行此操作,但不适用于所有可用的浏览器。 检查你的客户和你的服务器是否支持它。 例如,Debian Lenny上的Apache不支持它。
其他答案中的大部分内容都是正确的。
然而,使用debian lenny可以实现SNI(在服务器端!) – 但要注意这是实验性的事实。 你必须使用使用GnuTLS代替OpenSSL的libapache2-mod-gnutls。 有关示例,请参阅: http : //www.der-eremit.de/ssl-enabled-name-based-virtual-hosts-with-mod_gnutls/
如果您不能执行SNI或类似configuration,请记住,您可以在25个单独的IP地址中使用25个单独的证书。 您需要使25个SSL(HTTPS)服务器在25个不同的端口上侦听,并使用mod_rewrite为每个虚拟主机将您的HTTP侦听器redirect到相应的HTTPS服务器。