Running serveral https server on a single IP address

Nginx 在一个IP上配置多个https server时,默认只会发送默认server name的证书。这是由ssl 协议本身行为导致的:先建立ssl connection,后发送http请求。即nginx 建立ssl connection时是不知道请求的主机名字,因此返回默认server name的证书。

解决方案: 

1. 一个https server 一个IP。

2. 启用sni, 此需要浏览器,本机openssl,nginx 同时支持。

  编译参数:--enable-tlsext

   

$ nginx -V
...
TLS SNI support enabled
...

  

   



原文地址:https://www.cnblogs.com/divl/p/10524719.html