Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Same server, both SSL and non-SSL

Tags:

ssl

apache

vhosts

Is it possible to have both SSL protocol and non-SSL protocol running on the same server in Apache 2.x?

So if I access http://example.com (non-SSL) and https://example.com (SSL) they would both be available.

If so, would I need to create a virtual host? How would this VirtualHost directive look like, could anyone give me an example? (Assuming I already have the certificates)

like image 932
Eduard Luca Avatar asked Feb 03 '12 10:02

Eduard Luca


1 Answers

Yes, you simply add another VirtualHost for the same name on port 443 (HTTPS). Set SSLProtocol to whichever protocols you wish to allow.

<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>
like image 187
Alex Avatar answered Oct 16 '22 01:10

Alex