Apache服务器实现不同域名部署不同SSL证书方法
要实现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