Ubuntu 12.04.3 LTSを実行しているサーバーと、Ubuntu 14.04.1 LTSを実行しているサーバーがあり、そのうちの2つにSSL証明書があります。すべてbitnamiスタックであるため、Apache2構成ファイルは次の場所にあります。
/opt/bitnami/Apache2/conf/bitnami
要件は、www.
がある場合とない場合の2つのドメインの複数のドメイン名証明書であるため、実際には合計4つです。
website.com
www.website.com
website.co.uk
www.website.co.uk
最終的に、Apache2 bitnami.confファイルのvirtual-Host _default_:443
セクションで設定されたこれらすべてのドメインに対して1つの証明書がありました。ただし、証明書プロバイダーは、1つではなく2つの証明書を用意することを提案しました(より安価になるため)。
両方のドメインに物理サーバーが1つしかない場合、Apache2 confに2つの証明書を含めることはできますか?
その場合、2つの証明書を処理するために仮想ホストをどのように設定しますか?
仮想ホストごとに1つの証明書しか持てません。しかし、これはフリーソフトウェアです。独自の証明書を使用してドメインごとに個別の仮想ホストを追加するだけで、コストはかかりません(オーバーヘッドはほとんどありません)。
コンテンツが異なる場合を除き、さらに一歩進めて、1つのドメインをメインドメインとして選択し、他のすべてのドメインにリダイレクトさせます。これは通常、検索エンジンを満足させるために最適です(そして、人々が有機的に拡散するリンクは同じドメインになります)。
とにかく、3つの仮想ホストが作成されます。
www.website.com
website.com
)を使用して、メインドメイン(例:website.com
)にリダイレクトします。同じ証明書を使用します。単一のマルチドメイン証明書にはいくつかの利点があります。
ただし、通常はコストを上回っていません。そして、それらは固定されているため、別のドメインを追加する必要がある場合は、全額を支払う必要があります。大量のIPv4アドレスを取得するのは、まだ安価です。
また、マルチドメイン証明書を使用しても、3つの仮想ホストを使用して1つのドメインにリダイレクトします。
ドメインごとに1つの証明書を持つことができます。それを実現するには、ドメインごとに仮想ホストファイルを作成する必要があります。例としてwebsite.comを見てみましょう。
Ypuは/etc/Apache2/sites-available/default-ssl
でデフォルトのSSLテンプレートファイルを見つけることができます。
代わりに新しいファイルを作成します。 /etc/Apache2/sites-available/website.com
。
以下の例に一致するように新しいファイルを編集します。
<IfModule mod_ssl.c>
<VirtualHost 192.168.0.100:443>
ServerAdmin [email protected]
ServerName website.com:443
DocumentRoot /var/www/website.com
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/website.com>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
</VirtualHost>
</IfModule>
次に、新しいファイルをアクティブにします。 Sudo a2ensite website.com
Apache Sudo service Apache2 reload
をリロードします