web-dev-qa-db-ja.com

同じサーバー、SSLと非SSLの両方

Apache 2.xの同じサーバーでSSLプロトコルと非SSLプロトコルの両方を実行することは可能ですか?

したがって、http://example.com(非SSL)とhttps://example.com(SSL)にアクセスすると、両方とも使用可能になります。

もしそうなら、私は仮想ホストを作成する必要がありますか?このVirtualHostディレクティブはどのように見えますか、誰かが私に例を教えてもらえますか? (私はすでに証明書を持っていると仮定します)

18
Eduard Luca

はい、ポート443(HTTPS)に同じ名前の別のVirtualHostを追加するだけです。 SSLProtocol許可するプロトコル に設定します。

<VirtualHost *:80>
    ServerName your-domain.com
    DocumentRoot /var/www/your-domain-root
</VirtualHost>

<VirtualHost *:443>
    DocumentRoot /var/www/your-domain-root
    ServerName your-domain.com
    SSLEngine On
    SSLOptions +StrictRequire
    SSLCertificateFile /path/to/server.crt
    SSLCertificateKeyFile /path/to/server.key
    SSLProtocol TLSv1
</VirtualHost>
26
Alex