2017-02-27 23 views
1

デジタルオーシャンドロップレット(nginxを使用)に2つのドメインが設定されています。私はそのうちの1つ(domain1)にSSL証明書をインストールしました。 2番目のドメイン(domain2)はSSL証明書を必要としませんが、私がhttps://domain2にアクセスしようとすると私にdomain1のコンテンツが表示され、証明書のエラーが表示されます(このページは安全ではありません)。ssl証明書なしのドメインが異なるSSLドメインにリダイレクト

は私が証明書エラーを理解し、私はそれは構成の問題ですDOMAIN1の内容はhttps://domain2

に表示されたくないですか?

答えて

0

nginxは、常にデフォルトサーバーserver_nameが一致しない場合に使用されるデフォルトサーバーを持ちます。 listen 443という1つのサーバーブロックしかない場合は、サーバー名に関係なくすべてのhttps接続の暗黙的な既定のサーバーになります。

あなたはhttps接続のための明示的なキャッチオールサーバーを設定する、またはキャッチオールサーバーとして動作するように既存のserverブロックにlisten 443 sslを追加する必要があります。

同じ証明書ファイルを再利用できます。誰でも使用しようとすると引き続き証明書エラーが発生しますが、少なくとも他のドメインは公開されません。例えば

ssl_certificate  /path/to/crt; 
ssl_certificate_key /path/to/key;  

server { 
    listen 443 ssl; 
    server_name domain1; 
    ... 
} 
server { 
    listen 443 ssl default_server; 
    return 403; 
} 

は、より多くのためにthis documentthis documentを参照してください。

関連する問題