この Nginx 設定では:
server {
listen 443 ssl;
server_name www.x.nl x.nl;
ssl_certificate /etc/nginx/ssl/x.nl.crtkeyca;
ssl_certificate_key /etc/nginx/ssl/x.nl.crtkeyca;
[...]
}
これは機能します:
openssl s_client -servername www.x.nl -connect localhost:443 < /dev/null
デフォルトの vhost CN を取得するので、これは実行されません。
openssl s_client -servername x.nl -connect localhost:443 < /dev/null
Ubuntu 12.04 LTS の標準 Nginx を使用していますが、残念ながら非常に古いです (1.1.19)。
新しいバージョンでも動作するはずですか、それともserver {}
定義を複製する必要がありますか?
答え1
Nginx 1.8.0 でも同じ問題が発生しました。
私の場合、この問題は ssl_session_cache で異なる名前を設定することで修正されます (「???」を参照)。
ssl_session_cache shared:SSL_???:10m;