单个IP上配置多个HTTPS虚拟主机的实现

缘起

一度以为虚拟主机的配置是和http协议中的“Host”请求头有密切关系的,而ssl工作在http的下一层协议,先于http建立连接的,而在建立连接的时候是需要和“Host”相对应的证书的,再而且该证书在server端是配置在虚拟主机中的,所以,单个IP无法配置多个证书提供多个https的服务的,今天在阅读ssl的rfc时,一边也分析了ssl的握手过程,才发现host信息完全可以通过ssl的扩展字段告知server端该提供哪一份证书,于是,去百度google了一下,果然是可以这么做的。

相关概念

通配型ssl证书, 如: *.phpor.net , 适用于 a.phpor.net,  b.phpor.net 等等

多域名ssl证书,即: 一个证书可以关联多个不相关的域名,为多个域名提供认证

 

参考资料

http://coolerfeng.blog.51cto.com/133059/91736/

http://zhumeng8337797.blog.163.com/blog/static/1007689142011023102443424/   (参考其中的mod_gnutls)

http://tools.ietf.org/html/rfc6101

http://www.ietf.org/rfc/rfc3546.txt   (参考其中的 server_name)

 

 

 

留下评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据