同じ IP アドレスに複数の仮想ホストを持つ Nginx インスタンスがあります。 nginx.conf
次のような構成になっています。
server {
listen 443 default_server ssl;
server_name www.primary.com;
...
}
server {
listen 80;
server_name .primary.com;
rewrite ^(.*) https://www.primary.com$1 permanent;
}
server {
listen 443 ssl;
server_name www.secondary.com;
...
}
server {
listen 80;
server_name .secondary.com;
rewrite ^(.*) https://www.secondary.com$1 permanent;
}
server {
listen 443 ssl;
server_name www.tertiary.com;
...
}
server {
listen 80;
server_name .tertiary.com;
rewrite ^(.*) https://www.tertiary.com$1 permanent;
}
...
各ドメインには独自の SSL 証明書があります。すべての証明書は SSLLabs.com で A+ と評価されています。ただし、すべて SNI 非対応のブラウザ (WinXP 上の IE8 など) とは互換性がないことが示されています。
http(s)://www.primary.com
通常、ユーザーは、、http(s)://www.secondary.com
などに問題なくアクセスできますhttp(s)://www.tertiary.com
。ただし、Windows 7 64 ビットの一部の IE9 ユーザーから、または にアクセスしようとするとセキュリティ警告 (無効な証明書) が表示されるという苦情が寄せられていますhttps://www.secondary.com
。https://www.tertiary.com
セキュリティ警告を無視して続行すると、URL は正常に開きます。次に、ブラウザのアドレス バーから証明書を確認すると、www.primary.com
要求されたドメインの証明書ではなく、 の証明書が表示されます。同じユーザーは、同じマシン上の Firefox、Chrome、Opera など他のブラウザでは問題に遭遇していません。他のユーザーからもエラーは報告されていません (IE10、IE11、Safari、Windows 8、Mac OS など)。また、すべての IE9 ユーザーがこの問題に遭遇するわけではないことにも注意してください。同じネットワーク内の IE9 ユーザーが Web サイトに完全に正常にアクセスできることを確認しています。
ユーザーは、IT ポリシーによってデフォルトのブラウザ (IE9) の使用が推奨されている企業環境内にいるため、影響を受けるユーザーの中には、警告を深刻に受け止め、影響を受けるサイトの使用を継続することを拒否する人もいます。ブラウザ キャッシュのクリアなどの通常のオプションを試しました。
根本的な原因を見つけて修正する方法について、何かご意見やアドバイスはありますか? サーバー側で実装でき、ユーザーの介入を必要としないソリューションを希望します (Windows 7 上の IE9 に関する文書化された問題がない限り)。