首页 > tips > How to use Name-Based Virtual Hosting to identify different SSL virtual hosts?

How to use Name-Based Virtual Hosting to identify different SSL virtual hosts?

2010年2月21日 发表评论 阅读评论

怎样用基于域名的虚拟主机来标识不同的ssl的虚拟主机呢?
奇了怪了
前面不是已经否定了这个可能性了吗
怎么还出来Howto的问题呢?
不是我不明白,这世界变化快
原来的ssl协议是不支持的
但自打tls出来
支持个叫SNI(Server Name Indication)的feature之后
做基于域名的ssl的虚拟主机已经不再是天方夜谭
让我们还以apache+mod_ssl为例来说明问题
我们先看官方文档怎么说的

It is possible, but only if using a 2.2.12 or later web server, built with 0.9.8j or later OpenSSL. This is because it requires a feature that only the most recent revisions of the SSL specification added, called Server Name Indication (SNI).

这一段是摘自于最新的apache官方文档
写的很明白
只要apache的版本大于等于2.2.12
OpenSSL的版本大于等于0.9.8j
就可以支持
顺手再写个ssl虚机的例子:

<VirtualHost 127.0.0.1:443>
    SSLEngine On
    ServerName sni.ssl.xxx.com:443
    DocumentRoot /var/www/htdocs/
    SSLCertificateChainFile /var/www/ssl/root.pem
    SSLCertificateFile /var/www/ssl/root.crt
    TransferLog /var/www/logs/access.log
</VirtualHost>
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.