Glossário

O que é conteúdo misto?

19 de abril de 2026

Conteúdo misto ocorre quando uma página web carregada por uma conexão HTTPS segura inclui recursos (imagens, scripts, folhas de estilo, fontes, iframes) carregados por uma conexão HTTP insegura. Isso é um problema de segurança porque os recursos HTTP podem ser interceptados, modificados ou substituídos por um atacante, mesmo que a página principal em si esteja criptografada. O ícone de cadeado no navegador desaparece, e os visitantes veem avisos que minam a confiança no seu site.

Conteúdo misto passivo vs. ativo

Os navegadores distinguem entre duas categorias de conteúdo misto e tratam cada uma de modo diferente:

  • Conteúdo misto passivo (de exibição): inclui imagens, áudio e vídeo carregados por HTTP. O risco é menor porque esses recursos não podem alterar diretamente o comportamento da página. Um atacante poderia trocar uma imagem (mostrando conteúdo inadequado, por exemplo), mas não pode injetar código. Navegadores antigos costumavam carregar conteúdo misto passivo com um aviso. Os navegadores modernos cada vez mais o bloqueiam também, embora alguns ainda permitam com um indicador de segurança degradado.
  • Conteúdo misto ativo: inclui scripts, folhas de estilo, iframes, fontes e XMLHttpRequests carregados por HTTP. Conteúdo misto ativo é muito mais perigoso porque um script adulterado pode roubar credenciais de login, redirecionar o usuário ou injetar malware na página. Todos os navegadores modernos bloqueiam conteúdo misto ativo por padrão. O recurso simplesmente não carrega, o que pode quebrar a funcionalidade da página por completo.

Como os navegadores lidam com conteúdo misto

O comportamento dos navegadores ficou mais rigoroso ao longo dos anos. Eis o que acontece hoje:

  • Chrome: bloqueia todo conteúdo misto ativo. Desde a versão 80, o Chrome também atualiza automaticamente imagens, áudio e vídeo mistos para HTTPS. Se a versão HTTPS não existir, o recurso é bloqueado.
  • Firefox: bloqueia conteúdo misto ativo e exibe um ícone de escudo na barra de endereços. Conteúdo misto passivo dispara um aviso, mas ainda pode ser carregado em alguns casos.
  • Safari: bloqueia conteúdo misto ativo. Conteúdo misto passivo pode ser carregado com aviso, dependendo da versão.
  • Edge: segue o mesmo comportamento baseado em Chromium do Chrome.

A tendência é clara: os navegadores caminham para bloquear todo conteúdo misto, ativo e passivo. Corrigir problemas de conteúdo misto não é mais opcional.

Encontrando fontes de conteúdo misto

Há várias formas de identificar conteúdo misto no seu site WordPress:

  • Console do DevTools do navegador: abra o DevTools do Chrome (F12), vá até a aba Console e procure avisos amarelos ou erros vermelhos sobre conteúdo misto. O Chrome diz exatamente qual URL de recurso está causando o problema.
  • Why No Padlock: uma ferramenta online gratuita (whynopadlock.com) que varre uma URL e lista todos os recursos inseguros encontrados na página. Útil para uma checagem rápida sem abrir o DevTools.
  • Relatórios do InspectWP: o InspectWP varre automaticamente sua página em busca de quaisquer recursos carregados por HTTP em uma página HTTPS e lista cada um deles. É a forma mais rápida de obter um panorama completo do seu site inteiro.
  • SSL Labs: embora seja primariamente um verificador de configuração SSL/TLS, também pode sinalizar problemas de conteúdo misto na página testada.

Causas comuns de conteúdo misto no WordPress

Problemas de conteúdo misto no WordPress geralmente vêm de algumas fontes recorrentes:

  • URLs HTTP fixas no conteúdo: se você migrou seu site de HTTP para HTTPS, seus posts e páginas antigos ainda podem conter URLs de imagens e links começando com http://. Eram corretos na época, mas viraram conteúdo misto após a migração.
  • Recursos antigos do tema: alguns temas antigos ou temas filhos têm URLs HTTP fixas em CSS, arquivos JavaScript ou arquivos de template. Uma folha de estilo carregando uma imagem de fundo a partir de http://example.com/bg.jpg cria conteúdo misto.
  • Recursos de plugins: plugins que carregam scripts ou estilos externos por HTTP causam conteúdo misto. Isso é especialmente comum em plugins antigos ou mal mantidos que não foram atualizados para HTTPS.
  • Embeds externos: iframes, vídeos incorporados ou widgets de serviços de terceiros que usam URLs HTTP. Se o serviço terceiro suporta HTTPS (a maioria suporta hoje), trocar a URL para HTTPS resolve.
  • Configuração da CDN: se sua CDN não está configurada para entregar recursos por HTTPS, todo arquivo CSS, JS e imagem entregue pela CDN vira conteúdo misto.

Corrigindo conteúdo misto no WordPress

A correção depende da fonte do problema. Eis as soluções mais comuns:

  • Substituição de URLs no banco de dados: para URLs HTTP fixas no conteúdo de posts, use uma ferramenta de busca e substituição para atualizar todas as instâncias de http://seudominio.com para https://seudominio.com no banco de dados. O plugin Better Search Replace é amplamente usado para isso. Ele permite pré-visualizar mudanças antes de aplicá-las e funciona em todas as tabelas do banco. Sempre crie um backup do banco de dados antes de rodar uma busca e substituição.
  • SSL Insecure Content Fixer: este plugin do WordPress corrige automaticamente URLs inseguras em tempo real. Ele reescreve URLs HTTP para HTTPS na saída da página sem modificar o banco de dados. É uma boa solução temporária enquanto você corrige as causas raiz, mas adiciona um pequeno custo de desempenho porque processa todo carregamento de página.
  • Really Simple SSL: outro plugin popular que cuida da transição HTTP para HTTPS. Ele corrige conteúdo misto filtrando a saída da página, configura redirecionamentos e atualiza as configurações de URL do site no WordPress.
  • Correções manuais em tema e plugins: se o conteúdo misto vem de um arquivo de tema ou plugin, edite o código-fonte para substituir http:// por https:// ou, melhor ainda, use URLs relativas ao protocolo (//example.com/file.js) ou a função esc_url() do WordPress para gerar URLs dinamicamente.

Substituição de URLs no banco de dados em detalhes

A forma mais completa de corrigir conteúdo misto vindo de conteúdo antigo é uma busca e substituição no banco de dados. Eis o processo:

  1. Faça backup do seu banco de dados. Isso não é opcional; uma busca e substituição errada pode quebrar todo o seu site.
  2. Instale e ative o plugin Better Search Replace.
  3. Busque por http://seudominio.com e substitua por https://seudominio.com.
  4. Selecione todas as tabelas do banco (especialmente wp_posts, wp_postmeta e wp_options).
  5. Faça primeiro uma execução simulada (dry run) para ver quantas substituições seriam feitas.
  6. Se os números parecerem certos, execute a substituição real.

Para usuários de WP-CLI, o comando wp search-replace 'http://seudominio.com' 'https://seudominio.com' --all-tables faz a mesma coisa pela linha de comando. O WP-CLI lida corretamente com dados serializados no banco, o que é fundamental para opções e configurações de widgets.

Redirecionamento HTTPS via .htaccess

Após corrigir conteúdo misto, certifique-se de que todas as requisições HTTP ao seu site sejam redirecionadas para HTTPS. Isso impede que visitantes e mecanismos de busca acessem a versão HTTP. Em servidores Apache, adicione estas linhas ao seu arquivo .htaccess:

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

Em servidores nginx, adicione isto ao seu bloco de servidor:

server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;
    return 301 https://$server_name$request_uri;
}

Esse redirecionamento não corrige conteúdo misto sozinho, mas garante que ninguém visite acidentalmente a versão HTTP do seu site. Combinado com a substituição de URLs no banco e correções de plugins, ele completa a migração para HTTPS.

O que o InspectWP verifica

O InspectWP varre sua página em busca de quaisquer recursos carregados por HTTP em uma página HTTPS e lista cada um deles, incluindo o tipo de recurso e a URL completa. Isso lhe dá um checklist claro do que precisa ser corrigido. Páginas sem problemas de conteúdo misto exibem um resultado limpo, confirmando que sua configuração de HTTPS está funcionando corretamente.

Verifique seu site WordPress agora

O InspectWP analisa seu site WordPress em busca de problemas de segurança, problemas de SEO, conformidade com GDPR e desempenho — gratuitamente.

Analise seu site grátis