Buscar

SSL e HTTPS no WordPress: como configurar o certificado

Como emitir um certificado SSL gratuito no WordPress, forçar o redirect HTTP para HTTPS e resolver mixed content — sem os mitos sobre o cadeado.

Gabriel Pedroso12 min de leitura
SSL e HTTPS: como configurar e por que é essencial no WordPress

Colocar um site WordPress em HTTPS deixou de ser opcional — e, ao contrário do que muita gente acha, não custa nada nem exige conhecimento avançado. O certificado SSL/TLS pode ser gratuito (Let's Encrypt), a maioria das hospedagens ativa em um clique e o passo a passo cabe em uma tarde. O que quase ninguém explica direito é o outro lado da moeda: o cadeado no navegador prova que a conexão está criptografada, não que o site é honesto. Este guia mostra como emitir o certificado, apontar o WordPress para https://, forçar o redirect 301 e eliminar o mixed content — e onde estão os mitos que atrapalham.

HTTPS é, tecnicamente, o HTTP rodando dentro de uma conexão TLS. Sem ele, tudo que passa entre o navegador do visitante e o servidor — senhas, dados de formulário, cookies de sessão — trafega em texto aberto, legível por qualquer um no caminho (o Wi-Fi da cafeteria, o provedor de internet, um roteador comprometido). Desde 2018, o Chrome marca páginas HTTP com o aviso "Não seguro" ao lado do endereço; e o Google trata HTTPS como fator de ranqueamento — leve, mas confirmado — desde 2014.

SSL, TLS e HTTPS: o que é cada coisa

Três termos que vivem misturados e valem a pena separar, porque a confusão gera decisões erradas (como pagar caro por algo gratuito).

  • SSL/TLS: o protocolo de criptografia. "SSL" (Secure Sockets Layer) é o nome antigo; ele foi descontinuado e substituído pelo TLS (Transport Layer Security). Na prática, o que roda hoje é sempre TLS, mas o termo "SSL" pegou e virou genérico — todo mundo fala "certificado SSL".
  • Certificado: o arquivo que identifica o seu domínio e carrega a chave pública usada na criptografia. É emitido por uma Autoridade Certificadora (CA) confiável, como a Let's Encrypt.
  • HTTPS: é o resultado. HTTPS = HTTP + TLS. Quando o navegador e o servidor "conversam" por uma conexão TLS válida, a barra de endereço mostra o cadeado.

Por que isso importa no WordPress: você não compra "o HTTPS". Você emite um certificado, o coloca no servidor e ajusta o site para servir tudo por https://. O resto deste guia é exatamente esse caminho.

O que o cadeado garante (e o que não garante)

Este é o mito mais comum sobre SSL, e corrigi-lo evita cair em golpes. O cadeado é uma afirmação sobre a conexão, não sobre o caráter de quem está do outro lado.

O cadeado garanteO cadeado não garante
Que a conexão está criptografada de ponta a pontaQue o site é honesto ou legítimo
Que ninguém no caminho lê ou altera os dados em trânsitoQue a empresa por trás existe de verdade (num certificado DV)
Que o domínio tem um certificado válido emitido por uma CAQue o servidor não foi invadido ou não hospeda malware
Que você está falando com aquele domínio, e não com um impostor na redeQue aquilo não é uma página de phishing

A prova prática: sites de phishing usam HTTPS e exibem cadeado sem problema — emitir um certificado DV para um domínio recém-criado é gratuito e automático. Ou seja, cadeado presente é o mínimo esperado, não um selo de confiança. Confiança se avalia pelo domínio, pela reputação e pelo conteúdo. A criptografia em trânsito é só uma das camadas — vale combinar com DNS seguro e proteção de rede e com um bom hardening do WordPress.

Tipos de certificado: DV, OV e EV

Existem níveis de validação diferentes. A criptografia é a mesma nos três — o que muda é o quanto a CA verifica quem pediu o certificado.

TipoValidaçãoUso típico
DV (Domain Validation)Verifica só o controle do domínio (registro DNS ou e-mail). Automático e, na Let's Encrypt, gratuitoBlogs, sites institucionais, a maioria dos e-commerces. Suficiente para quase todo mundo
OV (Organization Validation)A CA confere a empresa registrada por trás do domínioEmpresas que querem exibir o nome da organização nos dados do certificado. Pago
EV (Extended Validation)Validação jurídica completa da organizaçãoBancos e instituições financeiras. Pago e mais caro
WildcardCobre *.seu-dominio.com (vários subdomínios com um só certificado)Quem tem muitos subdomínios (blog., loja., app.). Existe em versão gratuita (Let's Encrypt, via validação DNS) e paga

Para blog e pequenas empresas, o DV gratuito da Let's Encrypt resolve. A "barra verde com o nome da empresa" dos certificados EV, aliás, deixou de existir na interface dos navegadores em 2019 — Chrome e Firefox removeram esse destaque visual. Ou seja, hoje o visitante não vê diferença entre um cadeado de certificado gratuito e um de certificado caríssimo.

Como emitir e ativar o SSL no WordPress

Na prática são quatro passos: emitir o certificado, apontar a URL do site para https://, forçar o redirect e limpar o mixed content.

1Emitircertificado via hospedagem ou Let's Encrypt
2Apontara URL do site para https://
3Redirecionarforça HTTP → HTTPS com 301
4Corrigirelimina o mixed content restante
Os quatro passos para colocar o WordPress em HTTPS: emitir o certificado, apontar a URL do site, forçar o redirect 301 e eliminar o mixed content restante.

Passo 1: emitir o certificado

Escolha o caminho conforme onde o site está hospedado.

Hospedagem compartilhada (mais comum): a maioria das hospedagens modernas ativa um certificado Let's Encrypt automaticamente, muitas vezes sem você fazer nada. No painel (cPanel, Plesk ou o painel próprio da hospedagem), procure por "SSL/TLS", "Let's Encrypt" ou "SSL grátis" e clique em instalar/ativar. A emissão leva alguns minutos. Se o seu site já abre com cadeado, o certificado já está ativo.

VPS ou servidor próprio: use o Certbot, o cliente oficial da Let's Encrypt.

sudo apt install certbot python3-certbot-nginx   # troque por python3-certbot-apache no Apache
sudo certbot --nginx                              # ou --apache

O Certbot emite o certificado, ajusta a configuração do servidor e já deixa o redirect pronto. Ele também instala uma tarefa agendada que renova o certificado sozinho antes do vencimento (mais sobre isso adiante).

Plugin (opção para iniciantes): com o certificado já emitido pela hospedagem, o plugin Really Simple SSL (WP Admin → Plugins → Adicionar Novo) detecta o HTTPS, aplica o redirect e corrige o mixed content em um clique.

Passo 2: apontar a URL do site para HTTPS

Com o certificado ativo, diga ao WordPress para usar https://:

  • Vá em WP Admin → Configurações → Geral
  • Endereço do WordPress (URL): https://seu-site.com
  • Endereço do site (URL): https://seu-site.com
  • Salve (você será deslogado e entrará de novo já em HTTPS)

Passo 3: forçar o redirect HTTP → HTTPS

Sem redirect, http://seu-site.com continua acessível em paralelo — e o Google enxerga duas versões do site. Force todo o tráfego HTTP para HTTPS com um redirect 301 (permanente).

No Apache, no .htaccess da raiz do WordPress:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Para forçar HTTPS também no painel administrativo, adicione ao wp-config.php, antes da linha /* That's all, stop editing! */:

define('FORCE_SSL_ADMIN', true);

Se você usa o Really Simple SSL, ele já cuida do redirect — não precisa mexer no .htaccess.

Passo 4: corrigir o mixed content

Mixed content acontece quando uma página HTTPS ainda carrega algum recurso (imagem, CSS, JS, fonte) por http://. O navegador bloqueia esses recursos e quebra o cadeado, mostrando um aviso. Normalmente vem de URLs antigas gravadas dentro dos posts.

Correção rápida (WordPress): o Really Simple SSL reescreve os recursos HTTP para HTTPS automaticamente. Resolve a maioria dos casos.

Correção definitiva: troque as URLs http:// por https:// gravadas no banco. Não use um UPDATE ... REPLACE cru no SQL: parte dos dados do WordPress fica serializada (widgets, opções de tema), e um replace ingênuo corrompe esses campos porque a serialização guarda o tamanho das strings. Use uma ferramenta que entenda serialização:

# WP-CLI, sempre com --dry-run primeiro; nunca troque a coluna guid
wp search-replace 'http://seu-site.com' 'https://seu-site.com' --skip-columns=guid --dry-run

Sem acesso ao terminal, o plugin Better Search Replace faz o mesmo trabalho com uma opção de teste antes de aplicar. Faça backup do banco antes de qualquer substituição.

Em nível de servidor, você pode ainda pedir ao navegador que promova sozinho os recursos HTTP para HTTPS com um cabeçalho de Content Security Policy:

Header always set Content-Security-Policy "upgrade-insecure-requests"

Como conferir se o HTTPS está correto

Depois de configurar, valide de verdade:

  • Certificado válido? Abra o site, clique no cadeado (Chrome) e confira o emissor (ex.: "Let's Encrypt") e a validade.
  • Redirect funcionando? Acesse http://seu-site.com na mão. Tem que cair em https://seu-site.com.
  • Mixed content? Abra o console do navegador (F12 → aba Console) e navegue pelo site. Qualquer aviso de "Mixed Content" indica recurso HTTP restante.
  • Ferramentas externas: o SSL Labs (Qualys) dá uma nota completa da configuração TLS do servidor, e o Why No Padlock aponta exatamente qual recurso está quebrando o cadeado.

HTTPS e SEO: o que muda no Google

O Google confirma o HTTPS como fator de ranqueamento desde 2014. O peso é pequeno — não espere pular posições só por ativar o certificado —, mas é positivo e faz parte da higiene básica de qualquer projeto de SEO.

O ponto de atenção na migração de HTTP para HTTPS não é o "ganho", é não perder o que já existe:

  • Redirect 301 é obrigatório. Cada URL HTTP tem que redirecionar para a mesma URL em HTTPS. É assim que o Google entende que é a mesma página e transfere a autoridade acumulada.
  • Sem redirect, você cria conteúdo duplicado. As duas versões no ar competem entre si, e isso, sim, prejudica.
  • Avise o Search Console. Depois do HTTPS ativo, adicione a propriedade https://seu-site.com no Google Search Console para o Google rastrear a nova versão e você acompanhar a reindexação.

Nas primeiras semanas é normal não ver mudança nenhuma enquanto o Google reindexa. O objetivo aqui é estabilidade, não um salto de tráfego.

Renovação do certificado

Certificados Let's Encrypt duram 90 dias — de propósito, para forçar automação e reduzir o risco de um certificado comprometido ficar válido por muito tempo.

  • Hospedagem com SSL automático: renova sozinho, você não faz nada.
  • Certbot (VPS): já instala um agendamento que roda certbot renew e renova quando faltam menos de 30 dias para o vencimento. Teste que está tudo certo com:
sudo certbot renew --dry-run

Se um certificado chega a expirar (raro com renovação automática), o navegador passa a exibir um aviso vermelho de "certificado expirado", que espanta o visitante. Vale um lembrete simples: uma vez por mês, cheque a data de validade no cadeado e confirme que o redirect e a ausência de mixed content continuam de pé. Se você está montando o site agora, esse checklist entra bem no passo a passo de criar um blog WordPress.

Perguntas frequentes

SSL e HTTPS são a mesma coisa?

Não. SSL/TLS é o protocolo de criptografia, e o certificado é a credencial que identifica o seu domínio. HTTPS é o HTTP rodando dentro dessa conexão criptografada — ou seja, o resultado de aplicar TLS ao seu site. Na prática todo mundo fala "certificado SSL", mas o que roda hoje é a versão moderna, o TLS.

O certificado gratuito da Let's Encrypt é tão seguro quanto um pago?

Sim. A criptografia é exatamente a mesma: um certificado DV gratuito da Let's Encrypt e um certificado pago protegem a conexão de forma idêntica. A diferença dos pagos (OV/EV) está na validação da organização por trás do domínio, não na força da criptografia. Para blog, site institucional e a maioria dos e-commerces, o gratuito basta.

O cadeado no navegador garante que o site é confiável?

Não. O cadeado prova apenas que a conexão está criptografada e que o domínio tem um certificado válido. Ele não diz nada sobre a honestidade de quem está por trás do site. Sites de phishing também usam HTTPS e exibem cadeado. Confiança se avalia pelo domínio, pela reputação e pelo conteúdo — não pelo cadeado.

Mudar de HTTP para HTTPS faz o site perder posições no Google?

Não, desde que a migração seja feita com redirect 301 de cada URL HTTP para a versão HTTPS. Assim o Google reconhece que é a mesma página e transfere a autoridade acumulada. O que derruba o SEO é esquecer o redirect e deixar as duas versões (HTTP e HTTPS) no ar, o que o Google interpreta como conteúdo duplicado.

Como corrijo o mixed content rapidamente?

No WordPress, o caminho mais rápido é o plugin Really Simple SSL, que reescreve os recursos HTTP para HTTPS automaticamente. Para uma correção definitiva, troque as URLs http:// por https:// no banco com uma ferramenta que respeite dados serializados (WP-CLI search-replace ou o plugin Better Search Replace) e cheque o console do navegador (F12) até não sobrar nenhum aviso de Mixed Content.