Apache服务器实现不同域名部署不同SSL证书方法

jopen 9年前

要实现Apache服务器不同域名部署不同SSL证书,您需要支持SNI(Server Name Indication),也就意味着您需要满足以下条件:

(1)apache 2.2.12以上版本

(2)openssl 0.9.8f以上版本

首先您需要知道如何在Apache上部署SSL证书,请查阅Apache SSL证书部署指南

 

下面来看下Apache服务器如何实现不同域名部署不同SSL证书。

您可以将所有站点配置部署在一个配置文件下,也可以分别添加在各个站点配置文件下。

参考以下配置:

<NameVirtualHost *:443>

listen 443

----------------------------------------------------------------------------------------

<VirtualHost *:443>

ServerName www.yoursite.com

DocumentRoot /var/www/site

SSLEngine on

SSLProtocol all -SSLv2 -SSLV3

SSLCipherSuite ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!aNULL:!eNULL

SSLCertificateFile /path/to/2_domain1.com.crt

SSLCertificateKeyFile /path/to/3_doamin1.com.key

SSLCertificateChainFile /path/to/1_root_bundle.crt

</VirtualHost>

----------------------------------------------------------------------------------------

<VirtualHost *:443>

ServerName www.yoursite2.com

DocumentRoot /var/www/site2

SSLEngine on

SSLProtocol all -SSLv2 -SSLV3

SSLCipherSuite ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!aNULL:!eNULL

SSLCertificateFile /path/to/2_domain2.com.crt

SSLCertificateKeyFile /path/to/3_doamin2.com.key

SSLCertificateChainFile /path/to/1_root_bundle.crt

</VirtualHost>

最后重启Apache服务器。

当您用浏览器访问时,请注意您的浏览器版本是否支持SNI功能,请查阅支持SNI的浏览器

        原文地址http://www.wosign.com/faq/faq2016-0118-04.htm

来自: http://my.oschina.net/ssl/blog/604186