La creciente adopción de los navegadores web a la visualización de advertencias ‘No seguras‘ para sitios web no encriptados con el protocolo HTTPS ha introducido algunos nuevos desafíos para los desarrolladores y administradores web como la necesidad de consolidar un dominio canónico al redirigir los sitios HTTP a HTTPS, además de redirigir sus dominios con www o sin www (o viceversa).
http://www.example.com
a
https://example.com
https://www.example.com
Configuración en Apache
Abrir el archivo .htaccess mediante su editor de codigo favorito luego copiar/pegar los siguientes codigos
sin www / HTTP to HTTPS
Predeterminado: https://example.com
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]
con www / HTTP to HTTPS
Predeterminado: https://www.example.com
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://www.%1%{REQUEST_URI} [L,NE,R=301]
Si quiere entender como funciona la configuración y quiere hacer mas modificaciones visite la pagina del autor.
Fuente: https://simonecarletti.com/blog/2016/08/redirect-domain-http-https-www-apache/