Enable HTTPS support with Apache
NOTE: The steps below assume that you are using a custom domain name and that you have already configured the custom domain name to point to your cloud server.
Bitnami images come with SSL support already pre-configured and with a dummy certificate in place. Although this dummy certificate is fine for testing and development purposes, you will usually want to use a valid SSL certificate for production use. You can either generate this on your own (explained here) or you can purchase one from a commercial certificate authority.
Once you obtain the certificate and certificate key files, you will need to update your server to use them. Follow these steps to activate SSL support:
Use the table below to identify the correct locations for your certificate and configuration files.
Variable Value Current application URL https://[custom-domain]/ Example: https://my-domain.com/ or https://my-domain.com/appname Apache configuration file installdir/apache2/conf/bitnami/bitnami.conf Certificate file installdir/apache2/conf/server.crt Certificate key file installdir/apache2/conf/server.key CA certificate bundle file (if present) installdir/apache2/conf/server-ca.crt
Copy your SSL certificate and certificate key file to the specified locations.
NOTE: If you use different names for your certificate and key files, you should reconfigure the SSLCertificateFile and SSLCertificateKeyFile directives in the corresponding Apache configuration file to reflect the correct file names.
If your certificate authority has also provided you with a PEM-encoded Certificate Authority (CA) bundle, you must copy it to the correct location in the previous table. Then, modify the Apache configuration file to include the following line below the SSLCertificateKeyFile directive. Choose the correct directive based on your scenario and Apache version:
Variable Value Apache configuration file installdir/apache2/conf/bitnami/bitnami.conf Directive to include (Apache v2.4.8+) SSLCACertificateFile “installdir/apache2/conf/server-ca.crt” Directive to include (Apache < v2.4.8) SSLCertificateChainFile “installdir/apache2/conf/server-ca.crt”
NOTE: If you use a different name for your CA certificate bundle, you should reconfigure the SSLCertificateChainFile or SSLCACertificateFile directives in the corresponding Apache configuration file to reflect the correct file name.
Once you have copied all the server certificate files, you may make them readable by the root user only with the following commands:
$ sudo chown root:root installdir/apache2/conf/server* $ sudo chmod 600 installdir/apache2/conf/server*
Open port 443 in the server firewall.
Restart the Apache server.
You should now be able to access your application using an HTTPS URL.
Check out the following tutorials if you want to learn more about configuring HTTPS.