Forçar a utilização de SSL (https) via .htaccess

Forçar a utilização de SSL (HTTPS)

Após o certificado ter sido solicitado e instalado por nós, aguarde até 15 minutos para a propagação e verifique se seu site tem objetos (imagens, etc.) fora da área segura, informando a URL do mesmo, com https, em: https://www.whynopadlock.com. Quando isso ocorre, ao acessar a parte do seu site com objetos carregando via http e não https, o cadeado que consta ao lado da URL do seu site, aparece quebrado e o site pode constar também desfigurado. Para resolver isso, ajuste todos os links para usarem https. 

Vamos a como forçar o https, para que, ao acessar seu site sem https, seja redirecionado para carregamento com SSL/https.

Caso já tenha um htaccess, faça um backup e coloque o código do nosso exemplo ao topo, devidamente adaptado. No caso de não ter um arquivo htaccess, lembre-se de nomear o nosso exemplo para .htaccess e colocá-lo na pasta www.

Abaixo, há um exemplo da regra que você precisa colocar no seu arquivo .htaccess.

Substitua o termo seusitecomhttps.com.br para o endereço do seu site.

# CONFIGURAR UTILIZAÇÃO DO HTTPS
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://seusitecomhttps.com.br/$1 [R,L]

Entendendo cada linha da regra

Linha 1: É apenas um comentário, um título para a regra (não é um campo necessário);
Linha 2: Habilita a regra de regravação de URL;
Linha 3: Condiciona que todo acesso vindo da porta 80 será afetado pela regra;
Linha 4: Definição da regra, neste caso, sempre utilizar o https:// mesmo quando acessado por http.

Você utiliza Varnish?

Então o ideal é utilizar a seguinte regra:

RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://seusitecomhttps.com.br/$1 [R,L] 

➡ Substitua o termo seusitecomhttps.com.br pelo endereço do seu site.

Artigo relacionado:

Redirecionamento incorreto WordPress com Varnish + SSL