Criar redirecionamento com e sem www para HTTPS via htaccess
Neste artigo, informo como realizar o redirecionamento de um domínio utilizando o arquivo htaccess.
Basta apenas adicionar o código correspondente no arquivo, de acordo com o comportamento desejado.
Direcionar todo o site para https
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] </IfModule>
Aonde o dominio.com.br é a URL do seu site, essa é a forma mais rápida que conheço.
Direcionar de “com www” para “sem www”
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_HOST} ^www.dominio.com$ RewriteRule (.*) http://dominio.com/$1 [R=301,L] </IfModule>
Direcionar de “sem www” para “com www”
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_HOST} ^dominio.com RewriteRule ^ https://www.dominio.com%{REQUEST_URI} [L,R=301] </IfModule>
Diredirecionar todo o site para https e sem o www
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteCond %{HTTP_HOST} ^www.dominio.com.br$ RewriteRule (.*) https://dominio.com.br/$1 [R=301,L] </IfModule>
Nesse código, primeiro é redirecionado para o https, e após isso removido o www. do seu dominio.com.br.
Obs 1: Troque o o dominio.com.br para o seu dominio utilizado
Obs 2: lembre que de trocar o https para http caso o site não tenha ssl
Fonte: Stack Overflow