1
如何定义Nginx首先使用SNI发送的SSL证书?
我在Debian Squeeze上将nginx 1.2.7与OpenSSL 0.9.8o一起用于大约30个域。我在其中两个上启用了SSL,这两种方法都可以正常使用。 SSL配置可用于两个域: listen 443 ssl; ssl_certificate /etc/nginx/ssl/example.org-unified.crt; ssl_certificate_key /etc/nginx/ssl/example.org.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:RC4:HIGH:!MD5:!aNULL:!EDH; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; add_header Strict-Transport-Security max-age=600000; 使用ssllabs.com检查器检查两个域我得到一个域的通知“该站点仅在支持SNI的浏览器中工作”。对于其他域,我不会收到此消息。默认情况下,nginx似乎将按字母顺序的第一个域的证书发送给不支持SNI的客户端。我可以改变这种行为吗? 换句话说:我想将nginx配置为具有一个特定的域,即使没有SNI支持的客户端也可以使用SSL。其他域也应与SSL一起使用,但是如果仅在启用了SNI的客户端上可以使用,则可以。 谢谢!