apachesslhttpsvirtualhostmultiple-domains

Serve multiple domains on one ip and one port


I want to serve multiple domains on my CentOS server. I run servers on http. Now I want to run these servers on https.

I written ssl.conf like this.

Listen 443
<VirtualHost *:443>
  SSLEngine on
  SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
  SSLCertificateFile /etc/httpd/ssl/apache.crt
  SSLCertificateKeyFile /etc/httpd/ssl/apache.key
  SSLCertificateChainFile /etc/httpd/ssl/ca.crt
  ServerName example.com:443
  DocumentRoot "/var/www/html"
</VirtualHost>
<VirtualHost *:443>
  SSLEngine on
  SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
  SSLCertificateFile /etc/httpd/ssl/two.crt
  SSLCertificateKeyFile /etc/httpd/ssl/two.key
  SSLCertificateChainFile /etc/httpd/ssl/ca.crt
  ServerName two.example.com:443
  DocumentRoot /var/www/html/two
</VirtualHost>

But it doesn't work. How can I do it?

Thanks.


Solution

  • In my case, it works fine.

    Listen 443
    <VirtualHost *:443>
      SSLEngine on
      SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
      SSLCertificateFile /etc/httpd/ssl/apache.crt
      SSLCertificateKeyFile /etc/httpd/ssl/apache.key
      SSLCertificateChainFile /etc/httpd/ssl/ca.crt
      ServerName example.com:443
      DocumentRoot "/var/www/html"
    </VirtualHost>
    <VirtualHost *:443>
      DocumentRoot /var/www/html/two
      ServerName two.example.com
    </VirtualHost>